Мистика с интернет магазином...
Помогите разобраться, какая-то мистика с интернет магазином творится(((
Из одной группы товары просматриваются адекватно, а из остальных вместо шаблона товара шаблон группы включается(((
код шаблона каталог товаров
код шаблона товара
<?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">
<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"/>
<div id="selectedCar">
<xsl:for-each select="property">
<div class="limoCar">
<div>
<img class="pict" alt="{name}" >
<xsl:attribute name="src">
<xsl:value-of select="small_image/file_path" />
</xsl:attribute>
<xsl:attribute name="width">
<xsl:value-of select="small_image/file_path/@width" />
</xsl:attribute>
<xsl:attribute name="height">
<xsl:value-of select="small_image/file_path/@height" />
</xsl:attribute>
</img>
</div>
</div>
</xsl:for-each>
</div>
<div class="mainTextForCar">
<h2>
<xsl:value-of disable-output-escaping="yes" select="name" />
</h2>
<xsl:value-of disable-output-escaping="yes" select="description" />
<p>
<a href="/order/?carId={@id}" class="SpecialLink">Заказать</a>
</p>
</div>
</xsl:template>
<!-- Шаблон выводит хлебные крошки -->
<xsl:template match="group" mode="goup_path">
<xsl:variable name="parent_id" select="@parent"/>
<!-- Выбираем рекурсивно вышестоящую группу -->
<xsl:apply-templates select="//group[@id=$parent_id]" mode="goup_path"/>
<xsl:if test="@parent=0">
</xsl:if>
<h1>
<xsl:value-of select="name"/>
</h1>
</xsl:template>
</xsl:stylesheet>
Из одной группы товары просматриваются адекватно, а из остальных вместо шаблона товара шаблон группы включается(((
код шаблона каталог товаров
<?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:for-each select="item">
<div class="limo">
<div class="limoCar">
<div>
<!-- Изображение для товара, если есть -->
<xsl:if test="small_image!=''">
<a href="{/shop/path}{fullpath}{path}/">
<img src="{small_image}" class="pict" alt="{name}" >
<xsl:attribute name="width">
<xsl:value-of select="small_image/@width" />
</xsl:attribute>
<xsl:attribute name="height">
<xsl:value-of select="small_image/@height" />
</xsl:attribute>
</img>
</a>
</xsl:if>
</div>
<p>
<a href="{/shop/path}{fullpath}{path}/">
<xsl:value-of disable-output-escaping="yes" select="name"/>
</a>
</p>
</div>
</div>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
<!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:for-each select="item">
<div class="limo">
<div class="limoCar">
<div>
<!-- Изображение для товара, если есть -->
<xsl:if test="small_image!=''">
<a href="{/shop/path}{fullpath}{path}/">
<img src="{small_image}" class="pict" alt="{name}" >
<xsl:attribute name="width">
<xsl:value-of select="small_image/@width" />
</xsl:attribute>
<xsl:attribute name="height">
<xsl:value-of select="small_image/@height" />
</xsl:attribute>
</img>
</a>
</xsl:if>
</div>
<p>
<a href="{/shop/path}{fullpath}{path}/">
<xsl:value-of disable-output-escaping="yes" select="name"/>
</a>
</p>
</div>
</div>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
код шаблона товара
<?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">
<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"/>
<div id="selectedCar">
<xsl:for-each select="property">
<div class="limoCar">
<div>
<img class="pict" alt="{name}" >
<xsl:attribute name="src">
<xsl:value-of select="small_image/file_path" />
</xsl:attribute>
<xsl:attribute name="width">
<xsl:value-of select="small_image/file_path/@width" />
</xsl:attribute>
<xsl:attribute name="height">
<xsl:value-of select="small_image/file_path/@height" />
</xsl:attribute>
</img>
</div>
</div>
</xsl:for-each>
</div>
<div class="mainTextForCar">
<h2>
<xsl:value-of disable-output-escaping="yes" select="name" />
</h2>
<xsl:value-of disable-output-escaping="yes" select="description" />
<p>
<a href="/order/?carId={@id}" class="SpecialLink">Заказать</a>
</p>
</div>
</xsl:template>
<!-- Шаблон выводит хлебные крошки -->
<xsl:template match="group" mode="goup_path">
<xsl:variable name="parent_id" select="@parent"/>
<!-- Выбираем рекурсивно вышестоящую группу -->
<xsl:apply-templates select="//group[@id=$parent_id]" mode="goup_path"/>
<xsl:if test="@parent=0">
</xsl:if>
<h1>
<xsl:value-of select="name"/>
</h1>
</xsl:template>
</xsl:stylesheet>
Если все обстоит так как вы описали, то исходники самих xsl-шаблонов тут скорее всего не при чем. А "при чем" тут, быть может, настройки ТДС "Интернет-магазин", в которых осуществляется определение текущей группы/элемента.
Возможно также, "при чем" здесь какая-нибудь особенность построения url на вашем сайте.
В общем без доступа в ЦА, боюсь, не понять.
Так что вам скорее всего лучше обратиться в техподдержку.
Ну или в аську ко мне стукнуться, я, как в том старом анекдоте, "не гинеколог но посмотреть могу"
Возможно также, "при чем" здесь какая-нибудь особенность построения url на вашем сайте.
В общем без доступа в ЦА, боюсь, не понять.
Так что вам скорее всего лучше обратиться в техподдержку.
Ну или в аську ко мне стукнуться, я, как в том старом анекдоте, "не гинеколог но посмотреть могу"

Заказов не беру. Консультирую редко.
Авторизация