我正在使用默认的 umbTopNavigation.xslt 文件,并且希望从 URL 中获得不同的导航菜单项名称。目前,无论我在内容编辑器中为页面命名如何,都决定了该页面的 URL(即 About Us = about-us.aspx)。但是,如果我希望菜单项显示“关于我们”但 URL 是“about.aspx”怎么办?我在 id 为“menuItemName”的文档类型中添加了一个文本字符串,但我不确定编辑此代码以包含它的正确语法是什么:
<ul id="topNavigation" class="nav">
<xsl:for-each select="$currentPage/ancestor-or-self::* [@level=$level]/* [@isDoc and string(umbracoNaviHide) != '1']">
<li>
<xsl:if test="@id = $currentPage/@id">
<xsl:attribute name="class">current</xsl:attribute>
</xsl:if>
<a class="navigation" href="{umbraco.library:NiceUrl(@id)}">
<span><xsl:value-of select="@nodeName"/></span>
</a>
</li>
</xsl:for-each>
</ul>
显然这是需要更改的行:
<span><xsl:value-of select="@nodeName"/></span>
...但我不知道该怎么办?