Вывод поля в зависимости от условия (XSLT)
Материал из Umicms
Версия от 10:08, 5 июня 2013; Mad grant (обсуждение | вклад)
Актуально для версии 2.9
Для того, чтобы поле выводилось только при определённых условиях, либо наоборот, в XSLT шаблонах можно использовать условные операторы <xsl:if></xsl:if>. Это может понадобиться, когда поле типа "Цена" содержащее 0 не нужно выводить (Данное поле может либо содержать значение, либо 0 пустую строку в него поместить нельзя). Например у нас есть некоторые параметры, типа "Цена" не заполнены, и требуется выводить их только в случае наличия в них значений отличных от "0". Приведём пример, где идёт сравнение поля с 0:
<xsl:if test="(document(concat('uobject://',@id,'.price'))/udata/property/value/)!=0 " >
<xsl:value-of select="document(concat('uobject://',@id,'.price'))/udata/property/value/" />
</xsl:if>
В этом случае, цена выведется на страницу, только если она не равна нулю.