Каталог товаров в виде выпадающего меню

#
Каталог товаров в виде выпадающего меню
Здравствуйте!
Есть вот такое меню:
<ul class="sf-menu-phone item">
                                    <li><a href="#" class="level-top"><span>Моторы</span></a></li>
                                    <li><a href="#" class="level-top"><span>Винты</span></a></li>
                                    <li><a href="#" class="level-top"><span>Рулевое управление</span></a></li>
                                    <li class="level0 nav-5 level-top parent">
                                       <a href="#" class="level-top"><span>Электрооборудование</span></a>
                                       <ul class="level0" style="display: none;">
                                          <li><a href="#"><span>Навигационные огни</span></a></li>
                                          <li><a href="#"><span>Палубное освещение</span></a></li>
                                          <li><a href="#"><span>Панели управления</span></a></li>
                                          <li><a href="#"><span>Подзарядные устройства</span></a></li>
                                       </ul>
                                    </li>
                                 </ul>


XSL - шаблон сделал следующим образом:
   <!-- МагазинГруппыТоваровНаГлавной -->
   
   <xsl:template match="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>
   
   <!-- Шаблон для магазина -->
   <xsl:template match="/shop">
      <div class="nav-container block first">
         <div class="menu-icon-style">Каталог</div>
         <ul class="sf-menu-phone item">
            <xsl:apply-templates select="shop_group"/>
         </ul>
      </div>
   </xsl:template>
   
   <!-- Шаблон для групп товара -->
   <xsl:template match="shop_group">
      <li>
         <a href="{url}" class="level-top" hostcms:id="{@id}" hostcms:field="name" hostcms:entity="shop_group">
            <span><xsl:value-of disable-output-escaping="yes" select="name"/></span>
         </a>
         
         <!-- Если есть подгруппы -->
          <xsl:if test="shop_group">
             <li class="level0 nav-5 level-top parent">
                <a href="{url}" class="level-top" hostcms:id="{@id}" hostcms:field="name" hostcms:entity="shop_group">
                  <span><xsl:value-of disable-output-escaping="yes" select="name"/></span>
               </a>
               <ul class="level0" style="display: none;">
                  <li>
                     <xsl:apply-templates select="shop_group"/>
                  </li>
               </ul>
            </li>
         </xsl:if>
      </li>
   </xsl:template>


Проблема в том, что дублируется раздел меню, который имеет подразделы.
Подскажите, пожалуйста, как решить проблему.

Заранее благодарен.
#
Re: Каталог товаров в виде выпадающего меню
borisych,
Как-то так
   <!-- МагазинГруппыТоваровНаГлавной -->
   <xsl:template match="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>
    
   <!-- Шаблон для магазина -->
   <xsl:template match="/shop">
      <div class="nav-container block first">
         <div class="menu-icon-style">Каталог</div>
         <ul class="sf-menu-phone item">
            <xsl:apply-templates select="shop_group"/>
         </ul>
      </div>
   </xsl:template>
    
    <!-- Шаблон для групп товара -->
   <xsl:template match="shop_group">
      <xsl:choose>
         <xsl:when test="shop_group">
            <li class="level0 nav-5 level-top parent">
               <a href="{url}" class="level-top">
                  <span><xsl:value-of disable-output-escaping="yes" select="name"/></span>
               </a>
               <ul class="level0" style="display: none;">
                    <xsl:apply-templates select="shop_group"/>
               </ul>
            </li>
         </xsl:when>
         <xsl:otherwise>
            <a href="{url}" class="level-top">
               <span><xsl:value-of disable-output-escaping="yes" select="name"/></span>
            </a>
         </xsl:otherwise>
      </xsl:choose>

   </xsl:template>
HostDev.pw - модули для HostCMS, Telegram: @hostdev
#
Re: Re: Каталог товаров в виде выпадающего меню
EugenyP писал(а):
EugenyP
, спасибо Вам огромное! Все получилось! Только поправил немного. Может кому-то пригодится:
   <!-- МагазинГруппыТоваровНаГлавной -->
   <xsl:template match="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>
    
   <!-- Шаблон для магазина -->
   <xsl:template match="/shop">
      <div class="nav-container block first">
         <div class="menu-icon-style">Каталог</div>
         <ul class="sf-menu-phone item">
            <xsl:apply-templates select="shop_group"/>
         </ul>
      </div>
   </xsl:template>
    
    <!-- Шаблон для групп товара -->
   <xsl:template match="shop_group">
      <xsl:choose>
         <xsl:when test="shop_group">
            <li class="level0 nav-5 level-top parent">
               <a href="{url}" class="level-top">
                  <span><xsl:value-of disable-output-escaping="yes" select="name"/></span>
               </a>
               <ul class="level0" style="display: none;">
                    <xsl:apply-templates select="shop_group"/>
               </ul>
            </li>
         </xsl:when>
         <xsl:otherwise>
            <li>
               <a href="{url}" class="level-top">
                  <span><xsl:value-of disable-output-escaping="yes" select="name"/></span>
               </a>
            </li>
         </xsl:otherwise>
      </xsl:choose>

   </xsl:template>
Авторизация