Помогите разобраться с xsl.

#
Помогите разобраться с xsl.
Помогите разобраться с xsl. С таким я еще не встречался. В тех руководствах что я нашел всегда есть исходный файл xml в котором подключен xsl. И уже там все связано! А я вот ту столкнулся с тем что непонятно откуда берутся данные! Вот хотя бы пожалуйста объясните как работает этот код

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
   xmlns:hostcms="http://www.hostcms.ru/"
   exclude-result-prefixes="hostcms">
   <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"/>
   
   <xslecimal-format name="my" decimal-separator="," grouping-separator=" "/>
   
   <!-- Шаблон для типов доставки -->
   <xsl:template match="/shop">
      
      <!-- Строка шага заказа -->
      
      <h1>Способ доставки</h1>
      <div class="inb">
         <form method="post">
            <!-- Проверяем количество способов доставки -->
            <xsl:choose>
               <xsl:when test="count(shop_delivery) = 0">
                  <p>По выбранным Вами условиям доставка не возможна, заказ будет оформлен без доставки.</p>
                  <p>Уточнить данные о доставке Вы можете, связавшись с представителем нашей компании.</p>
                  <input type="hidden" name="shop_delivery_condition_id" value="0"/>
               </xsl:when>
               <xsl:otherwise>
                  <table class="sh" cellpadding="0" cellspacing="0">
                     <tr class="sht">
                        <td>Способ доставки</td>
                        <td>Описание</td>
                        <td>Цена доставки</td>
                        <td>Стоимость товаров</td>
                        <td>Итого</td>
                     </tr>
                     <xsl:apply-templates select="shop_delivery"/>
                  </table>
               </xsl:otherwise>
            </xsl:choose>
            
            <input name="step" value="3" type="hidden" />
            <div class="shb"><input value="Далее" type="submit" class="button2" /></div>
         </form>
      <div class="clr"></div></div>
   </xsl:template>
   
   <xsl:template match="shop_delivery">
      <tr>
         <td>
            <label>
               <input type="radio" value="{shop_delivery_condition/@id}" name="shop_delivery_condition_id">
                  <xsl:if test="position() = 1">
                     <xsl:attribute name="checked">checked</xsl:attribute>
                  </xsl:if>
         </input><xsl:text> </xsl:text><span class="caption"><xsl:value-of select="name"/></span>
            </label>
         </td>
         <td>
            <xsl:value-of disable-output-escaping="yes" select="description"/>
         </td>
         <td>
         <xsl:value-of select="format-number(shop_delivery_condition/price, '### ##0,00', 'my'"/><xsl:text> </xsl:text><xsl:value-of select="/shop/shop_currency/name"/></td>
         <td>
            <xsl:value-of select="format-number(/shop/total_amount, '### ##0,00', 'my'"/><xsl:text> </xsl:text><xsl:value-of select="/shop/shop_currency/name"/>
         </td>
         <td class="total">
            <xsl:value-of select="format-number(/shop/total_amount + shop_delivery_condition/price, '### ##0,00', 'my'"/><xsl:text> </xsl:text><xsl:value-of select="/shop/shop_currency/name"/>
         </td>
      </tr>
   </xsl:template>
</xsl:stylesheet>

Может если кто осмелиться мне помочь по скайпу пишите напишу свой скайп!. Разъясните пожалуйста!
Модератор
#
Re: Помогите разобраться с xsl.
Legi0ner___ писал(а):
В тех руководствах что я нашел всегда есть исходный файл xml в котором подключен xsl. И уже там все связано!

Все верно. У нас точно также XSL-шаблон применяется к XML, который генерируется для блока. Включить просмотр XML по которому строится XSL: http://www.hostcms.ru/documentation/guide/introduction/top-panel/xml/
Вы только что начали читать предложение, чтение которого вы уже заканчиваете.
#
Re: Помогите разобраться с xsl.
А XML генерируется по средствам PHP?
#
Re: Помогите разобраться с xsl.
Legi0ner___,
естественно
HostDev.pw - модули для HostCMS, Telegram: @hostdev
Авторизация