Вывод зачеркнутой старой цены рядом с ценой по скидке xslt
Материал из Umicms
Версия от 14:16, 19 июня 2013; Williwaw (обсуждение | вклад)
Актуально для версии 2.9
Задача:
- Необходимо, чтобы, при включении скидки на товар, рядом выводилась перечеркнутая старая цена.
Решение:
- Отредактировать необходимо шаблон, по которому выводятся все цены, а именно - price.xsl
- Находится в templates/название шаблона/xslt/modules/emarket
- Цена по скидке выводится с помощью шаблона
<xsl:template match="price" mode="discounted-price">
<xsl:value-of select="concat(@prefix, ' ', actual, ' ', @suffix)" />
</xsl:template>
- Внесем в него изменения:
<xsl:template match="price" mode="discounted-price">
<xsl:if test="original!=' ' ">
<span style="text-decoration: line-through">
<xsl:value-of select="concat(@prefix, ' ', original,' ', @suffix)" />
</span>
</xsl:if>
<xsl:value-of select="concat(@prefix, ' ', actual,' ', @suffix)" />
</xsl:template>
- Старая цена зачеркивается, если срабатывает условие, что original(старая цена) не пустой.
- Если не прописать данное условие, то, при отключении активности скидки, рядом с обычной ценой отобразится лишний зачеркнутый суффикс "руб".