Древовидный вывод груп товаров

#
Re: Древовидный вывод груп товаров
Пробую вот так не проходит.
<!-- Если есть подгруппы -->
         <xsl:if test="group">
            
            <xsl:variable name="parent_group_id" select="/shop/@current_group_id"/>
            
            
            <xsl:choose>
               <xsl:when test="$parent_group_id != 0">
                  <ul class="left_menu " id="{@id}" style="">
                     <xsl:apply-templates select="group"/>
                  </ul>
               </xsl:when>
               
               
               <xsl:when test="$parent_group_id = 0">
                  
                  
                  <ul class="left_menu " id="{@id}" style="display: none;">
                     <xsl:apply-templates select="group"/>
                     
                  </ul>
               </xsl:when>
               
               
               
            </xsl:choose>
            
         </xsl:if>
#
Re: Древовидный вывод груп товаров
Не нашел лучше темы, решил сюда пристроить свой вопрос.

1. Как выглядит в ТДС интернет-магазина конструкция, которая делает то же самое, что и конструкция
$InformationGroupId = 0; // false — из всех групп, 0 — из корневой группы

в ТДС ИС?
То есть мне нужно, чтобы в каждой группе на странице интернет-магазина выводилось количество товаров (в скобках) не данной группы, а с учетом подгрупп, а при переходе в подгруппу, с учетом ее вложенности так же.
По всякому пытался заставить работать параметр $param['current_group_id'] = false; по примерам на форуме, но получаю вместо желаемого только вывод списка всех товаров из всех групп магазина, вместо количества.

2. Почему-то в ТДС интернет-магазина для вывода списка товаров не работает
// При выводе списка товаров получать подробное описание каждого товара не нужно
      $param['show_text'] = true;

заменял значение на false и все равно список товаров в группе и в подгруппах выводится с описанием. Как сделать, чтобы заработало?
#
Re: Древовидный вывод груп товаров
Все, бросаю это дело до следующего года. Для меня это тяжело. Только потеря времени. Освою языки, потом вернусь. Эта CMS не для новичков.
#
Re: Древовидный вывод груп товаров
А как сделать, что бы аккардеон изначально был свернут, при выборе подгруппы разворачивался, а при выборе элемента каталога не сворачивался бы обратно и не был бы постоянно развернут весь?

т.е. если
<ul class="left_menu " id="{@id}" style="display: none;">
аккардеон свернут и сворачивается при выборе элемента каталога

если
<ul class="left_menu " id="{@id}" style="{$mystyle}">
аккардеон развернут весь

как реализовать что бы было как в первом варианте но не сворачивалось при выборе элемента?
#
Re: Древовидный вывод груп товаров
Есть такая же проблема, адаптировал все что написано выше под свой код, но нечего не получилось , можете помочь что не так. вот код шаблона.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <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="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>
   
   <!-- Шаблон для магазина -->
   <xsl:template match="/shop">
      <SCRIPT>
         <xsl:comment>
            <xsl:text disable-output-escaping="yes">
               <![CDATA[
               function show_hide_menu(id)
               {
               if (obj = document.getElementById(id)) {
               obj.style.display == 'none' ? obj.style.display = 'block' : obj.style.display = 'none';
               return false; }
               return true;
               }
               ]]>
            </xsl:text>
         </xsl:comment>
      </SCRIPT>
      <a href="{path}" title="Интернет-магазин">Каталог</a>
      <div class = "blocktitle">
         
      </div>
      
      <div class = "blockfish">
         <ul class="left_menu" id="shop_menu">
            <xsl:apply-templates select="group"/>
         </ul>
      </div>
      
   </xsl:template>
   <!-- Шаблон для групп товара -->
   <xsl:template match="group">
      <div class = "blockfirstr">
          <xsl:variable name="current_group_id" select="/shop/ТекущаяГруппа"/>
         <li>
            
            <!-- Если это подпункт (родитель не равен 0) - выводим слева от него тире -->
            <xsl:if test="@parent != 0">
            <!--   &#8212; -->
            </xsl:if>
<!-- Определяем стиль вывода ссылки -->
         <xsl:variable name="link_style">
            <xsl:choose>
               <!-- Выделяем текущую страницу жирным (если это текущая страница) -->
               <xsl:when test="$current_group_id = @id">font-weight: bold</xsl:when>
               <!-- Иначе обычный вывод с пустым стилем -->
               <xsl:otherwise></xsl:otherwise>
            </xsl:choose>
         </xsl:variable>
         <span class="folder"><a href="{/shop/path}{fullpath}" style="{$link_style}" onClick="return show_hide_menu('{@id}';">
               <xsl:value-of disable-output-escaping="yes" select="name"/>
         </a></span>&#xA0;   <span style="color: #aaaaaa">(<xsl:value-of select="count_all_items"/></span>
            
            <!-- Если есть подгруппы -->
            <xsl:if test="group">
               <ul class="left_menu gray_link gray" id="{@id}" style="display: none;">
                  <xsl:apply-templates select="group"/>
               </ul>
            </xsl:if>
            
         </li>
      </div>
   </xsl:template>
   
</xsl:stylesheet> 
#
Re: Древовидный вывод груп товаров
Доброй ночи!

Подскажите пожалуйста в следующем вопросе. Есть каталог, выглядит так:

Группа
Подгруппа 1
Подгруппа 2
Подгруппа 3

Если выбираем Подгруппу 1 становится так:

Группа
Подгруппа 1
  Подподгруппа 1
  Подподгруппа 2
  Подподгруппа 3
  Подподгруппа 4
Подгруппа 2

Далее выбираем Подподгруппа 1 к примеру и переходим в список товаров, но в каталоге все меню закрывается и становится таким:

Группа
Подгруппа 1
Подгруппа 2
Подгруппа 3

Каким образом сделать так чтоб те Подподгруппы не сворачивались?

<!-- Шаблон для магазина -->
   <xsl:template match="/shop">
      <SCRIPT>
         <xsl:comment>
            <xsl:text disable-output-escaping="yes">
               <![CDATA[
               function show_hide_menu(id)
               {
               if (obj = document.getElementById(id))
               {
               (obj.style.display == 'none' || obj.style.display=='' ? obj.style.display = 'block' : obj.style.display = 'none';
               return false;
               }
               return true;
               }
               ]]>
            </xsl:text>
         </xsl:comment>
      </SCRIPT>
#
Re: Древовидный вывод груп товаров
Господа есть специалист кто за доп. плату может подсказать каким образом решить выше обозначенную проблему?
#
Re: Древовидный вывод груп товаров
Кто нибудь решил эту проблему?
#
Re: Древовидный вывод груп товаров
Авторизация