Reputation: 43
how to create Umbraco menu like this using XSLT ?
<ul id="topmenu">
<li><a href="#">top1</a></li>
<li><a href="#">top2</a></li>
<li><a href="#">top3</a>
<ul>
<li><a href="#">sub1</a></li>
<li><a href="#">sub2</a></li>
<li><a href="#">sub3</a></li>
</ul>
</li>
<li><a href="#">top4</a></li>
<li><a href="#">top5</a></li>
</ul>menu like this using XSLT ?
Upvotes: 2
Views: 2601
Reputation: 2215
Something like this should work. This is based on the initially generated Navigation XSLT.
<ul class="nav sf-menu">
<xsl:for-each select="$currentPage/ancestor-or-self::*[@isDoc and @level=$level]/* [@isDoc and string(umbracoNaviHide) != '1']">
<li>
<a href="{umbraco.library:NiceUrl(@id)}">
<xsl:value-of select="@nodeName"/>
</a>
<xsl:if test="count(./child::*[@isDoc and string(umbracoNaviHide) != '1']) > 0">
<ul>
<xsl:for-each select="./child::*[@isDoc and string(umbracoNaviHide) != '1']">
<li>
<a href="{umbraco.library:NiceUrl(@id)}">
<xsl:value-of select="@nodeName"/>
</a>
</li>
</xsl:for-each>
</ul>
</xsl:if>
</li>
</xsl:for-each>
</ul>
Upvotes: 7