Как сделать раскрывающееся по нажатию меню на XSLT — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «Подключаем меню: <source lang="xml"> <xsl:include href="menu.xsl" /> </source> в главный шаблон. Делаем вызов в главно…»)
(нет различий)

Версия 07:35, 29 апреля 2010

Подключаем меню:

<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>