Вывод выбранных доп.свойств для товара

#
Вывод выбранных доп.свойств для товара
Никак не получается заставить работать шаблон для скидок из такой конструкции

<?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">
      <!-- Есть товары -->
      <xsl:if test="item">
         <!-- Выводим товары магазина -->
         <div class="sales_block">
            <xsl:apply-templates select="item"/>
         </div>
      </xsl:if>
   </xsl:template>
   
   <!-- Шаблон для товара -->
   <xsl:template match="item">
      <!-- Малое изображение товара фоном  -->
      <div class="sale_item" style="background-image: url({small_image}); background-repeat: no-repeat; background-position: 54% 45%;">
         <div class="sale_img" style="background-image: url(/images/img/frame-red.png); background-repeat: no-repeat;">
            <p class="sale_name"><xsl:value-of disable-output-escaping="yes" select="name"/></p>
            <xsl:apply-templates select="property"/>
         </div>
      </div>
   </xsl:template>
   
   <!-- Шаблон для скидок -->
   <xsl:template match="property">
      <xsl:if test="item/property[id = '171' and value = '10']">
         <p class="discount_block">10%</p>
      </xsl:if>
   </xsl:template>

</xsl:stylesheet>

Форумчане, выручайте!
Безумие - как гравитация, стоит лишь немного подтолкнуть...
Модератор
#
Re: Вывод выбранных доп.свойств для товара
что именно не получается? какой фрагмент не работает?
#
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">
      <!-- Есть товары -->
      <xsl:if test="item">
         <!-- Выводим товары магазина -->
         <div class="sales_block">
            <xsl:apply-templates select="item"/>
         </div>
      </xsl:if>
   </xsl:template>
   
   <!-- Шаблон для товара -->
   <xsl:template match="item">
      <!-- Малое изображение товара фоном  -->
      <div class="sale_item" style="background-image: url({small_image}); background-repeat: no-repeat; background-position: 54% 45%;">
         <div class="sale_img" style="background-image: url(/images/img/frame-red.png); background-repeat: no-repeat;">
            <p class="sale_name"><xsl:value-of disable-output-escaping="yes" select="name"/></p>
            <xsl:apply-templates select="discount"/>
         </div>
      </div>
   </xsl:template>
   
   <!-- Шаблон для скидок -->
   <xsl:template match="discount">
      <xsl:if test="/item/discount[@id] = 5">
         <p class="discount_block">5%</p>
      </xsl:if>
      <xsl:if test="/item/discount[@id] = 6">
         <p class="discount_block">10%</p>
      </xsl:if>
      <xsl:if test="/item/discount[@id] = 7">
         <p class="discount_block">NEW!</p>
      </xsl:if>
      <xsl:if test="/item/discount[@id] = 8">
         <p class="discount_block"><img src="/images/img/sale_winner.png" /></p>
      </xsl:if>
   </xsl:template>


</xsl:stylesheet>
Безумие - как гравитация, стоит лишь немного подтолкнуть...
#
Re: Вывод выбранных доп.свойств для товара
вместо /item/discount[@id] оставьте @id
#
Re: Вывод выбранных доп.свойств для товара
compilation error: file /home/***/public_html/ line 54 element if

неа
а, стоп, понял.....да, помогло, преогромнейшее спасибо
Смею подозревать, что
<xsl:template match="discount">

напрямую связан с именами результатов из обработки XML

<discount id="6">
<name>Скидка 10%</name>
<value>10</value>
</discount>

?
Безумие - как гравитация, стоит лишь немного подтолкнуть...
#
Re: Вывод выбранных доп.свойств для товара
так и есть)
#
Re: Вывод выбранных доп.свойств для товара
Вононочо михалыч....уразумел, спасибо ещё раз!
Безумие - как гравитация, стоит лишь немного подтолкнуть...
Авторизация