Как сделать раскрывающееся по нажатию меню на XSLT — различия между версиями
Материал из Umicms
Waclaw (обсуждение | вклад) (Новая страница: «Подключаем меню: <source lang="xml"> <xsl:include href="menu.xsl" /> </source> в главный шаблон. Делаем вызов в главно…») |
Cmac (обсуждение | вклад) |
||
Строка 38: | Строка 38: | ||
</xsl:stylesheet> | </xsl:stylesheet> | ||
</source> | </source> | ||
+ | [[Категория:Меню]] |
Версия 13:56, 8 сентября 2011
Подключаем меню:
<xsl:include href="menu.xsl" />
в главный шаблон.
Делаем вызов в главном шаблоне:
<ul><xsl:apply-templates select="document('udata://content/menu')/udata" mode="menu" /></ul>
Создаем шаблон для вывода кода меню menu.xsl в папке /xsltTpls/imports/
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="item" mode="menu">
<li><xsl:value-of select="@id" />
<a href="{@link}"> <xsl:value-of select="." /></a>
<xsl:for-each select=".">
<xsl:if test="@status ='active'">
<xsl:apply-templates select="document(concat('udata://content/menu///', @id))/udata"/>
</xsl:if>
</xsl:for-each>
</li>
</xsl:template>
<xsl:template match="udata[@method = 'menu']">
<ul>
<xsl:apply-templates select=".//item" mode="menu"/>
</ul>
</xsl:template>
</xsl:stylesheet>