Использование чекбоксов при фильтрации
Материал из Umicms
Версия от 08:22, 5 июня 2013; Mad grant (обсуждение | вклад)
Актуально для версии 2.9
Задача: в фильтре товаров выводить значения свойства не выпадающим списком, а в виде чекбоксов.
Необходимо добавить следующий код в шаблон /templates/имя_шаблона/xslt/modules/catalog/search-filter.xsl :
<xsl:template match="field[@name = 'cvet']" mode="search">
<div>
<label>
<xsl:value-of select="@title" />
<xsl:apply-templates select="values/item" mode="searchTest" />
</label>
</div>
</xsl:template>
<xsl:template match="values/item" mode="searchTest">
<span>
<input type="checkbox" name="fields_filter[cvet][]" value="{@id}">
<xsl:if test="checked">
<xsl:attribute name="checked">checked</xsl:attribute>
</xsl:if>
</input>
<xsl:value-of select="." />
</span>
</xsl:template>
В данном примере 'cvet' - это идентификатор поля "цвет" для товара. Таким образом, все варианты цвета будут выводиться в виде чекбоксов и будет возможна смешанная фильтрация.