我正在尝试使用此代码选择此网站的所有网页,以及网址中是否有联系人。它会拉出那个特定的网址。我需要让它创建一个链接,其中包含for-each将会拉动的url值。
<xsl:for-each select="$currentPage/ancestor-or-self::* [@level=$level]/* [@isDoc and string(umbracoNaviHide) != '0'] [contains(@nodeName,'contact')]">
<xsl:value-of select="@nodeName"/>
</xsl:for-each>
答案 0 :(得分:0)
在Umbraco中,url存储为url或niceurl(http://our.umbraco.org/wiki/reference/umbracolibrary/niceurl) - 节点名称通常用于生成它 - 但它不是一回事。
以下内容应该有效:
<xsl:variable name="siteRoot" select="$currentPage/ancestor-or-self::*[@level = 1]" />
<xsl:variable name="urlString" select="contact" />
<xsl:for-each select="$siteRoot//*[@isDoc][not(umbracoNaviHide = 1)][contains(umbraco.library:NiceUrl($currentPage/../@id), $urlString)]">
<xsl:value-of select="@nodeName"/>
</xsl:for-each>
答案 1 :(得分:0)
<xsl:variable name="siteRoot" select="$currentPage/ancestor-or-self::*[@level = 1]" />
<xsl:for-each select="$siteRoot">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:value-of select="translate(@nodeName,'.','')"/>_contact.aspx
</xsl:attribute>
Contact Us
</xsl:element>
</xsl:for-each>
我刚刚接受了主页面名称并将_contact添加到了它。