Выводим количество товаров в категории xslt — различия между версиями
Материал из Umicms
Deez (обсуждение | вклад) |
Deez (обсуждение | вклад) |
||
Строка 11: | Строка 11: | ||
</source> | </source> | ||
Назовём его 42.xml и положим в паку /usels. | Назовём его 42.xml и положим в паку /usels. | ||
− | Затем идём в шаблон, отвечающий за вывод подкатегорий и добавляем | + | Затем идём в шаблон, отвечающий за вывод подкатегорий и внутрь |
+ | <source lang="xml"> | ||
+ | <xsl:template match="udata[@method = 'getCategoryList']//item"> | ||
+ | </source> | ||
+ | после | ||
+ | <source lang="xml"> | ||
+ | <xsl:value-of select="." /> | ||
+ | </source> | ||
+ | добавляем следующий код | ||
<source lang="xml"> | <source lang="xml"> | ||
<xsl:value-of select="document(concat('usel://42/', @id))/udata/total" /> | <xsl:value-of select="document(concat('usel://42/', @id))/udata/total" /> |
Версия 16:07, 31 июля 2012
Если у нас стоит задача вывести количество товаров напротив каждой подкатегории(к примеру чтоб напротив DVD плееры стояла цифра 3, то есть кол-во DVD плееров) Для начала создадим usel запрос вот такого содержания
<?xml version="1.0" encoding="UTF-8"?>
<selection>
<target result="pages">
<type module="catalog" method="object" />
<category depth="2">{1}</category>
</target>
</selection>
Назовём его 42.xml и положим в паку /usels. Затем идём в шаблон, отвечающий за вывод подкатегорий и внутрь
<xsl:template match="udata[@method = 'getCategoryList']//item">
после
<xsl:value-of select="." />
добавляем следующий код
<xsl:value-of select="document(concat('usel://42/', @id))/udata/total" />
В нашем случае это шаблон /templates/modern/xslt/modules/catalog/category-list.xsl Всё, теперь у нас напротив категорий выводится количество товаров в этой категории. Работа протестирована в версиях 2.8.5.1 и 2.8.5.2