私の Umbraco プロジェクトの構造は次のとおりです。
Content
-Home
--Contacts
--Offices
-About
ホームには「/」アドレスがあり、インデックス ページです。XSLT を使用して、Both - Home 要素と About 要素をメニューに配置する方法を教えてもらえますか? 現在、ホームである現在のページのレベルごとにサブノードのみを取得できるため、連絡先とオフィスのみを取得します。ハードコーディングされたものではなく動的なものが必要なので、documentType で取得することはできません。メニューに表示するためにホームとアバウトを常に取得する方法はありますか? 私は XSLT をまったく初めて使用し、Umbraco 自体で 2 日目です。
編集:これはXMLの一部です。
<xsl:param name="currentPage"/>
<!-- Input the documenttype you want here -->
<xsl:variable name="level" select="1"/>
<xsl:template match="/">
<!-- The fun starts here -->
<ul>
<xsl:for-each select="$currentPage/ancestor-or-self::* [@level=$level]/* [@isDoc and string(umbracoNaviHide) != '1']">
<xsl:if test="$currentPage/@id = @id">
<li class="selected">
<a href="{umbraco.library:NiceUrl(@id)}">
<xsl:value-of select="@nodeName"/>
</a>
</li>
</xsl:if>
<xsl:if test="$currentPage/@id != @id">
<li>
<a href="{umbraco.library:NiceUrl(@id)}">
<xsl:value-of select="@nodeName"/>
</a>
</li>
</xsl:if>
<xsl:value-of select="$currentPage/id"/>
</xsl:for-each>
</ul>
</xsl:template>
Edit2: レベルの平等を取り除くことで、「ホーム」である「セルフ」を取得しましたが、「アバウト」はまだありません。「ancestor-or-self::*」などの「X-Path」セレクターに関する情報を見つける方法を知っているかもしれません。