Вывод подгрупп текущей группы в меню

#
Вывод подгрупп текущей группы в меню
Как сделать вывод меню в новой 6 версии, чтобы в меню у текущей группы выводились подгруппы.

Пример:
-Группа А
-Группа Б (текущая)
--Подгоруппа А1
--Подгоруппа Б1
-Группа В
-Группа Г

Ставил в макете groupsMode('all') - в XML также нет подгрупп.
$Shop_Controller_Show
            ->xsl(
               Core_Entity::factory('Xsl')->getByName('МагазинГруппыТоваровНаГлавной')
            )
            ->groupsMode('all')
            //->itemsForbiddenTags(array('text'))
            ->group(0)
            ->limit(0)
            ->show();

Раскомментировал часть "Если есть подгруппы", но все равно не выводяться.
<!-- Шаблон для групп товара -->
   <xsl:template match="shop_group">
      <li>
         <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">
            <ul  id="{@id}" >
               <xsl:apply-templates select="shop_group"/>
            </ul>
         </xsl:if>
      </li>
   </xsl:template>
Модератор
#
Re: Вывод подгрупп текущей группы в меню
При
->groupsMode('all')
должны быть все группы. Отключите кэш и проверьте еще раз, может быть не там или не тому контроллеру написали.
#
Re: Вывод подгрупп текущей группы в меню
Я это делаю на редакции Халява - в ней нет кеширования.
Модератор
#
Re: Вывод подгрупп текущей группы в меню
dreel, тогда только в поддержку.
#
Re: Вывод подгрупп текущей группы в меню
Подскажите пожалуйста а как сделать разные стили у групп и подгрупп, вот в таком варанте получается одинаковый стиль у групп и подгрупп:

<!-- МагазинГруппыТоваровНаГлавной -->
   
   <xsl:template match="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>
   
   <!-- Шаблон для магазина -->
   <xsl:template match="/shop">
   
      <ul class="shop_list">
         <xsl:apply-templates select="shop_group"/>
      </ul>

   </xsl:template>
   
   <!-- Шаблон для групп товара -->
   <xsl:template match="shop_group">
      <li>
         <div style="background:url('/kfr/kat_d.jpg') no-repeat; width:150px; height:32px; padding:5px 1px 3px 1px"  align="center"><a href="{url}" hostcms:id="{@id}" hostcms:field="name" hostcms:entity="shop_group" style="color:white; font-family:VDS; font-size:9pt" align="center">
               <xsl:value-of disable-output-escaping="yes" select="name"/>
         </a></div>
         
      </li>

<!-- Если есть подгруппы -->
         <xsl:if test="shop_group">
            <div  id="{@id}" align="center">
               <xsl:apply-templates select="shop_group"/>
            </div>
         </xsl:if>

</xsl:template>
Студия дизайна Advanced Systems
#
Re: Вывод подгрупп текущей группы в меню
dezigner писал(а):
Подскажите пожалуйста а как сделать разные стили у групп и подгрупп

Введите переменную $nesting_level - счетчик уровня вложенности. Сначала установите значение в 1, затем прибавляйте его при каждом вызове шаблона shop_group.
В html добавьте class в
<ul class="level-{$nesting_level}">...</ul>
Модератор
#
Re: Вывод подгрупп текущей группы в меню
dezigner, как узнать уровень вложенности см http://www.hostcms.ru/forums/22/111/
#
Re: Вывод подгрупп текущей группы в меню
....мозг вспух (наверное из-за того что я не программист, а дизайнер), по всей видимости для очередной простой вещи придется привлекать программиста...это кстати к вопросу о современности и удобству системы, http://www.hostcms.ru/forums/2/7559/ - здесь я как раз пытаюсь это объяснить.
Студия дизайна Advanced Systems
Модератор
#
Re: Вывод подгрупп текущей группы в меню
dezigner писал(а):
наверное из-за того что я не программист, а дизайнер
А зачем дизайнер занимается интеграциями?! Получится также, если программист будет заниматься дизайном.
#
Re: Вывод подгрупп текущей группы в меню
HostCMS писал(а):
должны быть все группы. Отключите кэш и проверьте еще раз, может быть не там или не тому контроллеру написали.

Окказалось надо было это указать в макете Основной, а я указывл во вложенном макете Шаблон для Интернет-магазина.
Похоже код шаблонов просто перенесли из 5 версии без редактирования под новые вложенные макеты.
Я так понимаю, что в Шаблон для Интернет-магазина слудющий блок кода вообще не нужен, т.к. он ничего не генерирует.
// Разделы магазина
      if (Core::moduleIsActive('shop'))
      {
         $Shop_Controller_Show = new Shop_Controller_Show(
            Core_Entity::factory('Shop', Core_Page::instance()->libParams['shopId'])
         );
         $Shop_Controller_Show
            ->xsl(
               Core_Entity::factory('Xsl')->getByName('МагазинГруппыТоваровНаГлавной')
            )
            ->groupsMode('tree')
            //->itemsForbiddenTags(array('text'))
            ->group(0)
            ->limit(0)
            ->show();
      }

Так ли это, модератор?
Авторизация