Вывод товаров из подкатегорий

#
Вывод товаров из подкатегорий
Приветствую.

Хочу вывести в категориях товары из подкатегорий.
Нагло стащил решение из http://www.hostcms.ru/forums/2/8392/
Проблема в том, что товары дочерней категории выводятся только для родительской, а для прародительской - уже нет.

XSL шаблон:
<xsl:if test="count(shop_item) &gt; 0 or /shop/filter = 1">
  <!-- дополнение пути для action, если выбрана метка -->
  <xsl:variable name="form_tag_url"><xsl:if test="count(tag) = 1">tag/<xsl:value-of select="tag/urlencode"/>/</xsl:if></xsl:variable>
  
  <xsl:variable name="path">
    <xsl:choose>
      <xsl:when test="/shop//shop_group[@id=$group]/node()">
        <xsl:value-of select="/shop//shop_group[@id=$group]/url"/>
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="/shop/url"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:variable>
  
  <form method="get" action="{$path}{$form_tag_url}">
    <div class="goods">
      <!-- Выводим товары магазина -->
      <xsl:apply-templates select="shop_item" />
    </div>
    
    
    <xsl:if test="total &gt; items_on_page ">
      <xsl:if test="total &gt; 0 and limit &gt; 0">
        
        <xsl:variable name="count_pages" select="ceiling(total div limit)"/>
        
        <xsl:variable name="visible_pages" select="5"/>
        
        <xsl:variable name="real_visible_pages"><xsl:choose>
            <xsl:when test="$count_pages &lt; $visible_pages"><xsl:value-of select="$count_pages"/></xsl:when>
            <xsl:otherwise><xsl:value-of select="$visible_pages"/></xsl:otherwise>
        </xsl:choose></xsl:variable>
        
        <!-- Считаем количество выводимых ссылок перед текущим элементом -->
        <xsl:variable name="pre_count_page"><xsl:choose>
            <xsl:when test="page - (floor($real_visible_pages div 2)) &lt; 0">
              <xsl:value-of select="page"/>
            </xsl:when>
            <xsl:when test="($count_pages - page - 1) &lt; floor($real_visible_pages div 2)">
              <xsl:value-of select="$real_visible_pages - ($count_pages - page - 1) - 1"/>
            </xsl:when>
            <xsl:otherwise>
              <xsl:choose>
                <xsl:when test="round($real_visible_pages div 2) = $real_visible_pages div 2">
                  <xsl:value-of select="floor($real_visible_pages div 2) - 1"/>
                </xsl:when>
                <xsl:otherwise>
                  <xsl:value-of select="floor($real_visible_pages div 2)"/>
                </xsl:otherwise>
              </xsl:choose>
            </xsl:otherwise>
        </xsl:choose></xsl:variable>
        
        <!-- Считаем количество выводимых ссылок после текущего элемента -->
        <xsl:variable name="post_count_page"><xsl:choose>
            <xsl:when test="0 &gt; page - (floor($real_visible_pages div 2) - 1)">
              <xsl:value-of select="$real_visible_pages - page - 1"/>
            </xsl:when>
            <xsl:when test="($count_pages - page - 1) &lt; floor($real_visible_pages div 2)">
              <xsl:value-of select="$real_visible_pages - $pre_count_page - 1"/>
            </xsl:when>
            <xsl:otherwise>
              <xsl:value-of select="$real_visible_pages - $pre_count_page - 1"/>
            </xsl:otherwise>
        </xsl:choose></xsl:variable>
        
        <xsl:variable name="i"><xsl:choose>
            <xsl:when test="page + 1 = $count_pages"><xsl:value-of select="page - $real_visible_pages + 1"/></xsl:when>
            <xsl:when test="page - $pre_count_page &gt; 0"><xsl:value-of select="page - $pre_count_page"/></xsl:when>
            <xsl:otherwise>0</xsl:otherwise>
        </xsl:choose></xsl:variable>
        
        <div class="pages">
          <xsl:call-template name="for">
            <xsl:with-param name="limit" select="limit"/>
            <xsl:with-param name="page" select="page"/>
            <xsl:with-param name="items_count" select="total"/>
            <xsl:with-param name="i" select="$i"/>
            <xsl:with-param name="post_count_page" select="$post_count_page"/>
            <xsl:with-param name="pre_count_page" select="$pre_count_page"/>
            <xsl:with-param name="visible_pages" select="$real_visible_pages"/>
          </xsl:call-template>
          <xsl:if test="not(on_page)">
            <a href="{$path}?on_page=1000" class="allpag">показать все</a>
          </xsl:if>
        </div>
      </xsl:if>
      
    </xsl:if>
    <xsl:if test="on_page = 1000">
      <div class="pages">
        <a href="{$path}" class="allpag">вернуться в режим пролистывания</a>
      </div>
    </xsl:if>
  </form>
</xsl:if>


В HostCMS новичок, не понимаю даже - в шаблоне причина или в контроллере.
#
Re: Вывод товаров из подкатегорий
Skype:ferdinant1988 ICQ:311960596 E-mail: ferdinant@i.ua
#
Re: Re: Вывод товаров из подкатегорий
Большое спасибо, всё работает. Гуглить гуглил, а в документации не посмотрел.
Авторизация