сортировка групп товара в меню

#
сортировка групп товара в меню
Сделал для бутстреп-меню вот такой вот xsl-шаблон, в нём группы магазина находятся на верхнем уровне, всё работает хорошо, но почету-то не работает сортировка подгрупп магазина которые попадают в выпадающее меню, они просто сортируются по алфавиту.
Как такую проблему решить?



<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
   xmlns:hostcms="http://www.hostcms.ru/"
   exclude-result-prefixes="hostcms">
   <xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="utf-8" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
   
   <xsl:template match="/site">
      
      <ul class="nav navbar-nav">
         <!-- Выбираем узлы структуры первого уровня -->
         <xsl:apply-templates select="*/shop_group[@id][show=1][path !='shop']" />
         <xsl:apply-templates select="*[@id][show=1][path !='shop']" />
      <!--      <li><a href="#contacts">контакты</a></li> -->
      <li> <a href="#contact" id="zvonok" data-toggle="modal">заказать<br/>звонок<img class="tell" src="/images/vincent/tell.png"/></a></li>
      </ul>
   </xsl:template>
   
   <!-- Запишем в константу ID структуры, данные для которой будут выводиться пользователю -->
   <xsl:variable name="current_structure_id" select="/site/current_structure_id"/>
   
   <xsl:template match="*">
      <!-- Шаблон выборки дочерних узлов -->
      <xsl:variable name="sub" select="*[@id][show=1][active=1]" />
      
      <li>
         <xsl:attribute name="class">
            <xsl:if test="$sub">dropdown</xsl:if>
         </xsl:attribute>
         
         
         
         <!-- Определяем адрес ссылки -->
         <xsl:variable name="link">
            <xsl:choose>
               <!--  Если внешняя ссылка  -->
               <xsl:when test="url != ''">
                  <xsl:value-of disable-output-escaping="yes" select="url"/>
               </xsl:when>
               <!--  Иначе если внутренняя ссылка  -->
               <xsl:otherwise>
                  <xsl:value-of disable-output-escaping="yes" select="link"/>
               </xsl:otherwise>
            </xsl:choose>
         </xsl:variable>
         <xsl:choose>
            <xsl:when test="$sub">
               <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                  <xsl:value-of disable-output-escaping="yes" select="name"/>
                  <b class="caret"/>
               </a>
            </xsl:when>
            <xsl:otherwise>
               <a href="{$link}" title="{name}">
                  <xsl:value-of disable-output-escaping="yes" select="name"/>
               </a>
            </xsl:otherwise>
         </xsl:choose>
         
         
         
         <xsl:if test="$sub">
            <xsl:variable name="submenu" select="1"/>
            <ul class="dropdown-menu">
               <xsl:apply-templates select="$sub" />
            </ul>
         </xsl:if>
         
      </li>
      <xsl:if test="not($sub) and not(position() = last())">
         <li class="divider"></li>
      </xsl:if>
   </xsl:template>
</xsl:stylesheet>
#
Re: сортировка групп товара в меню
Всё оказалось проще. В настройках магазина вкладка "сортировка", видимо закакзчик случайно сортировку скинул на "по имени".

Впринципе тему можно удалить, либо как пример реализации бутстреп-меню пусть лежит. тут вначале выводятся группы магазина, как разделы, а их подгруппы в выпадающих меню, а дальше выводятся остальные разделы сайта.
Авторизация