Уважаемые посетители! Сообщаем вам, что Служба Заботы прекратила поддержку UMI.CMS на форуме.
Для связи со Службой Заботы пользуйтесь формой обратной связи
[XSLT] Вывод значения кастомного поля вместо названия товара в каталоге
Приветствую!
Возникла необходимость выводить вместо обычных названий товаров "альтернативные названия", которые указаны в созданном поле sale_name.
Как это сделать на странице товара разобрался — вставил <xsl:value-of select=".//property[@name = 'sale_name']/value" disable-output-escaping="yes"/> вместо <xsl:value-of select="$document-title" />
Но в списке товаров каталога такой способ не работает. Пробовал эту же строку вставлять вместо
<xsl:value-of select="name" />
<xsl:if test="not(name)">
<xsl:apply-templates />
</xsl:if>
Ничего не выводится. Подскажите, как решить задачку?
ЦитироватьКирилл Иванов
(28.01.2012 20:13)
Re: [XSLT] Вывод значения кастомного поля вместо названия товара в каталоге
<xsl:value-of select="name" />
<xsl:if test="not(name)">
<xsl:apply-templates select="document(concat('upage://', @id, '.sale_name'))//value" />
</xsl:if>
или
<xsl:value-of select="name" />
<xsl:if test="not(name)">
<xsl:apply-templates select="document(concat(@xlink:href, '.sale_name'))//value" />
</xsl:if>
ЦитироватьИлья Рогов
(28.01.2012 20:32)
Re: [XSLT] Вывод значения кастомного поля вместо названия товара в каталоге
Илья, спасибо, первый вариант подошел!
ЦитироватьКирилл Иванов
(28.01.2012 20:35)
Re: [XSLT] Вывод значения кастомного поля вместо названия товара в каталоге
Надо только понимать, что при такой конструкции старое имя все равно будет выводиться и если оно не инициализировано будет выводиться значение из нового поля. Кроме этого делается запрос на уже загруженный контент (concat('upage://', @id...
для того, чтобы вывести значение поля простого типа от текущей страницы достаточно использовать консртукцию:
<xsl:value-of select="property[@name='sale_name']/value"/>
ЦитироватьМихаил Грибов
(09.02.2012 15:57)