МагазинГруппыТоваровНаГлавной - c 5-ки на 6-ку

#
МагазинГруппыТоваровНаГлавной - c 5-ки на 6-ку
Господа! Мозги в кучку.
На 5-ке был след. рабочий шаблон.

   <xsl:template match="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>
   
   <!-- Шаблон для магазина -->
   <xsl:template match="/shop">
         <xsl:apply-templates select="group"/>
   </xsl:template>
               
   <xsl:template match="group">      
         <xsl:choose><xsl:when test="group">                  
                  <div class="menuitem closed" id="mnuitm{@id}"><span>
                        <a onclick="hideShow(this)">
                           <xsl:value-of disable-output-escaping="yes" select="name"/>
                        </a>
                                 
                        <!-- Если есть подгруппы -->
                        <xsl:if test="group">
                           <div class="submenu">
                              <xsl:apply-templates select="group"/>
                           </div>
                        </xsl:if>
               </span></div></xsl:when><xsl:otherwise>
                  <div class="menuitem" id="mnuitm{@id}"><span>
                        <a href="{/shop/path}{fullpath}">
                           <xsl:value-of disable-output-escaping="yes" select="name"/>
                        </a>
                                    
                        <!-- Если есть подгруппы -->
                        <xsl:if test="group">
                           <div class="submenu">
                              <xsl:apply-templates select="group"/>
                           </div>
                        </xsl:if>
                  </span></div>
            </xsl:otherwise></xsl:choose>
   </xsl:template>

Под 6-ку внес след. изменения:
   
   <xsl:template match="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>

   <xsl:template match="/shop">
         <xsl:apply-templates select="shop_group"/>      
   </xsl:template>
   
   <xsl:template match="shop_group">
      <xsl:choose>
         <xsl:when test="shop_group">
            <div class="menuitem closed" id="mnuitm{@id}"><span>
                  <a onclick="hideShow(this)" hostcms:id="{@id}" hostcms:field="name" hostcms:entity="shop_group">
                     <xsl:value-of disable-output-escaping="yes" select="name"/>
                  </a>
                  
                  <xsl:if test="shop_group">
                     <div class="submenu" id="{@id}">
                        <xsl:apply-templates select="shop_group"/>
                     </div>
                  </xsl:if>
            </span></div>
         </xsl:when>
         <xsl:otherwise>
            <div class="menuitem" id="mnuitm{@id}"><span>
                  <a href="{url}" hostcms:id="{@id}" hostcms:field="name" hostcms:entity="shop_group">
                     <xsl:value-of disable-output-escaping="yes" select="name"/>
                  </a>
                  
                  <xsl:if test="shop_group">
                     <div class="submenu" id="{@id}">
                        <xsl:apply-templates select="shop_group"/>
                     </div>
                  </xsl:if>
            </span></div>
         </xsl:otherwise>
      </xsl:choose>
   </xsl:template>


Проблема в том, что код строится всегда по второй части условия вне зависимости от наличия подгрупп у группы.
Пробовал поковыряться с условиями: все равно получается работа по какому-то одному из условий, т. е. не получается сделать проверку на наличие подгрупп у группы...
#
Re: МагазинГруппыТоваровНаГлавной - c 5-ки на 6-ку
Покопавшись с XML на демо сайте, я кажется нашел в чем дело.

Раньше при вызове данного XSL-шаблона я передавал параметр
$param['xml_show_group_type'] = 'all';

А как его передать на 6-ке?

И кстати я также ограничивал передачу других ненужных мне параметров, например,
        

         $param['xml_show_group_property'] = false;

Хотя сейчас вроде как большинство из них уже не передается по умолчанию. Но это уже тонкие настройки.

А вот про группы - прям очень буду благодарен.

P. S. А что случилось с моей аватарой?
#
Re: МагазинГруппыТоваровНаГлавной - c 5-ки на 6-ку
Сейчас вызов осуществляется так:
         $Shop_Controller_Show
            ->xsl(
               Core_Entity::factory('Xsl')->getByName('МагазинГруппыТоваровНаГлавной')
            )
            ->groupsMode('tree')
            ->itemsForbiddenTags(array('text'))
            ->group(0)
            ->limit(0)
            ->show();
#
Re: МагазинГруппыТоваровНаГлавной - c 5-ки на 6-ку
Можно удалять тему)) Оказывается, уже есть подробное описание всех методов в онлайн-документации
#
Re: МагазинГруппыТоваровНаГлавной - c 5-ки на 6-ку
Только 1 вопрос перед закрытием.

Попробовал использовать след. код для отключения вывода в XML ненужной информации.
            ->groupsForbiddenTags(array('description', 'guid', 'items_count', 'items_total_count', 'image_large', 'image_small', 'sorting', 'siteuser_group_id'))

Однако, например, при указании в данном списке тега 'dir' он все равно выводится в XML. Почему так?

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