как вывести доп свойство группы?

#
Re: как вывести доп свойство группы?
если поточнее: при входе в родительскую группу у которой есть дочерние должно показываться доп свойство родительской группы после пути к группе, доп свойство группы test555


<?xml version="1.0" encoding="windows-1251"?>
<!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="Windows-1251" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>

   <xsl:decimal-format name="my" decimal-separator="," grouping-separator="."/>
   
   <xsl:template match="/shop">
      <xsl:apply-templates select="item"/>
   </xsl:template>

   <xsl:template match="item">

      <SCRIPT>
         <xsl:comment>
            <xsl:text disable-output-escaping="yes">
         <![CDATA[
         function ShowImgWindow(title, src, width, height)
         {
            obj = window.open("", "", "scrollbars=0,dialog=0,minimizable=1,modal=1,width="+width+",height="+height+",resizable=0");
            obj.document.write("<html>");
            obj.document.write("<head>");
         
            obj.document.write("<title>"+title+"</title>");
         
            obj.document.write("</head>");
         
            obj.document.write("<body topmargin=0 leftmargin=0 marginwidth=0 marginheight=0>");
         
            obj.document.write("<img src=\""+src+"\" />");
         
            obj.document.write("</body>");
            obj.document.write("</html>");
         }
         ]]>
         </xsl:text>
         </xsl:comment>
      </SCRIPT>

      <div>
         <h1>
            <xsl:value-of disable-output-escaping="yes" select="name"/>
         </h1>
      </div>
      <!-- Получаем ID родительской группы и записываем в переменную $parent_group_id -->
      <xsl:variable name="parent_group_id" select="/shop/@current_group_id"/>

      <xsl:if test="$parent_group_id = 0">
         <a href="{/shop/path}">
            <xsl:value-of disable-output-escaping="yes" select="/shop/name"/>
         </a>
      </xsl:if>

      <!-- Путь к группе -->
      <xsl:apply-templates select="//group[@id=$parent_group_id]" mode="goup_path"/>

      <span class="path_arrow">&#x2192;</span>
      <b>
         <a href="{/path}">
            <xsl:value-of disable-output-escaping="yes" select="name"/>
         </a>
      </b>

      <xsl:value-of select="property[@xml_name = 'test555']/value"/>

      <div style="clear: both"></div>

      

      <div>
         <!-- Изображение для товара, если есть -->
         <xsl:if test="small_image != ''">
            <div style="float: left; width: {small_image/@width}px; margin: 0px 10px 10px 0px; color: #aaaaaa;">
               <a href="{image}" target="blank_" onclick="ShowImgWindow('{name}','{image}', {image/@width}, {image/@height}); return false;">
                  <img src="{small_image}" style="border: 1px solid #DADADA; margin: 0px 5px 5px 0px"/>
               </a>
               <br/>
               <a href="{image}" target="blank_" onclick="ShowImgWindow('{name}','{image}', {image/@width}, {image/@height}); return false;">
               <img src="/hostcmsfiles/images/zoom.gif" alt="Увеличить" />
               </a>         
               </div>
         </xsl:if>

         

         <!-- Описание товара -->
         <!-- <p><xsl:value-of disable-output-escaping="yes" select="description" /></p> -->

         <p>
            <xsl:value-of disable-output-escaping="yes" select="text"/>
         </p>

         <div style="clear: both;"></div>
      </div>

   

      <!-- Выводим список дополнительных свойств -->
      <xsl:apply-templates select="propertys/property"/>
            <!-- доп свойство АРТИКУЛ -->
            
            <xsl:value-of select="property[@xml_name = 'art']/value"/><br></br>
           <b>Состав:</b>
            <xsl:value-of select="property[@xml_name = 'sostav']/value"/><br></br>
            <b>Размеры:</b>
            <xsl:value-of select="property[@xml_name = 'razmery']/value"/><br></br>
            <b>Цвета:</b>
            <xsl:value-of select="property[@xml_name = 'cveta']/value"/><br></br>
            <!-- доп свойство ОПИСАНИЕ -->
            <xsl:value-of select="property[@xml_name = 'opisanie']/value"/><br></br>

      <!-- Модификации -->
      <xsl:if test="count(modifications/item) &gt; 0">
         <b>Модификации:</b>
         <table cellspacing="3" cellpadding="3" style="margin-left: -6px;">
            <tr>
               <td style="border-bottom: 1px solid #dadada;">Название</td>
               <td style="border-bottom: 1px solid #dadada;">Цена</td>
            </tr>
            <xsl:apply-templates select="modifications/item"/>
         </table>
      </xsl:if>

      <xsl:if test="count(tying/item) &gt; 0">
         <p>
            <b>Сопутствующие товары:</b>
         </p>
         <!-- Отображаем сопутствующие товары -->
         <xsl:apply-templates select="tying/item"/>
      </xsl:if>

      <!-- Отзывы о товаре -->
   </xsl:template>
Модератор
#
Re: как вывести доп свойство группы?
<!-- Путь к группе -->
      <xsl:apply-templates select="//group[@id=$parent_group_id]" mode="goup_path"/>

      <span class="path_arrow">&#x2192;</span>
      <b>
         <a href="{/path}">
            <xsl:value-of disable-output-escaping="yes" select="name"/>
         </a>
      </b>

      <xsl:value-of select="//group[@id=$parent_group_id]/propertys/property[@xml_name = 'test555']/value"/>
#
Re: как вывести доп свойство группы?
по аналогии пытаюсь вывести
<?xml version="1.0" encoding="windows-1251"?>
<!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="Windows-1251" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>

   <xsl:decimal-format name="my" decimal-separator="," grouping-separator="."/>

   <xsl:template match="/">
      <xsl:apply-templates select="/shop"/>
   </xsl:template>

   <!-- Шаблон для магазина -->
   <xsl:template match="/shop">
      <!-- Получаем ID родительской группы и записываем в переменную $parent_group_id -->
      <xsl:variable name="parent_group_id" select="@current_group_id"/>

      <!-- Если в находимся корне - выводим название информационной системы -->
      <xsl:if test="$parent_group_id = 0">
         <h1>
            <xsl:value-of disable-output-escaping="yes" select="name"/>
         </h1>
      </xsl:if>

      <!-- Если в находимся в группе - выводим название группы -->
      <xsl:if test="$parent_group_id != 0">
         <h1>
            <xsl:value-of disable-output-escaping="yes" select=".//group[@id=$parent_group_id]/name"/>
         </h1>
      </xsl:if>

      <!-- Обработка выбранных тэгов -->
      <xsl:if test="count(selected_tags/tag) = 1">
         <h2>Метка &#x97; <strong><xsl:value-of select="selected_tags/tag/tag_name"/></strong>.</h2>
      </xsl:if>

      <!-- Путь к группе -->
      <div class="path">
         <xsl:apply-templates select=".//group[@id=$parent_group_id]" mode="goup_path"/>
      </div>

      <xsl:variable name="count">1</xsl:variable>
<xsl:value-of select="//group[@id=$parent_group_id]/property[@xml_name = 'test555']/value"/>
      <!-- Отображение подгрупп данной группы, только если подгруппы есть и не идет фильтра по меткам -->
      <xsl:if test="count(selected_tags/tag) = 0 and count(//group[@parent=$parent_group_id]) &gt; 0">
         <table width="100%" border="0" cellpadding="3" cellspacing="0">
            <tr>
               <td valign="top">
                  <xsl:apply-templates select="//group[@parent=$parent_group_id]"/>
               </td>
            </tr>
         </table>
      </xsl:if>

только вот не получается
Модератор
#
Re: как вывести доп свойство группы?
propertys забыли, сейчас исправлю выше.
#
Re: как вывести доп свойство группы?
HostCMS,
спасибо огромное работает
Модератор
#
Re: как вывести доп свойство группы?
Пожалуйста.
#
Re: как вывести доп свойство группы?
Здравствуйте. Хочу продолжить тему. Мне нужно вывести из дополнительного свойства группы товаров Таблицу. Дополнительное свойство задано в виде Визуального редактора. Создаю в допсвойстве Таблицу, но вместо Таблицы выводится ее html код. Какой шаблон задать в XSL для вывода из дополнительного свойства, чтобы отображалась таблица?
iNikSite - дизайн и фронтенд разработка
#
Re: как вывести доп свойство группы?
Добавьте атрибут disable-output-escaping="yes":

<xsl:value-of disable-output-escaping="yes" select="//group[@id=$parent_group_id]/propertys/property[@xml_name = 'test555']/value"/>
http://superweb.pro/ — сайты на HostCMS под ключ
#
Re: как вывести доп свойство группы?
dogstudio писал(а):

Спасибо за помощь, я этот код как раз и вставил, но у меня выводится таблица в виде html кода  
iNikSite - дизайн и фронтенд разработка
Авторизация