我使用CMS生成的XML在使用XSLT的页面上呈现HTML内容。
基本上,我需要更改下面的代码行,以便"查询范围"不再对页面进行硬编码,而是将其替换为用户在CMS中键入的任何链接名称。
<a href="{Page[@Name='AreasofInquiryLink']/@URL}">
<strong>Areas of Inquiry Courses</strong>
</a>: 
以下是CMS生成的XML:
<TaxonomyNavigation
StartNodes="2299|2300|2297|2296|2298|2295"
Depth="0"
IncludePages="true"
Name="AreasofInquiry"
label="Areas of Inquiry">
这是完整的XSLT代码块:
<xsl:template match="RequirementsTabComponent">
<xsl:if test="TaxonomyNavigation[@Name='AreasofInquiry']//Category">
<p>
<a href="{Page[@Name='AreasofInquiryLink']/@URL}"><strong>Areas of Inquiry Courses</strong></a>: 
</p>
</xsl:if>
<xsl:value-of select="AreasofInquiry" disable-output-escaping="yes"/>
</xsl:template>
我将非常感谢您对我如何做到这一点的任何帮助。
答案 0 :(得分:0)
如果它只是您需要的label
上的TaxonomyNavigation
属性,那么您要查找的表达式是
<xsl:value-of select="TaxonomyNavigation[@Name='AreasofInquiry']/@Label" />
要将其置于上下文中,这就是xslt模板的样子:
<xsl:template match="RequirementsTabComponent">
<xsl:if test="TaxonomyNavigation[@Name='AreasofInquiry']//Category">
<p>
<a href="{Page[@Name='AreasofInquiryLink']/@URL}">
<strong>
<xsl:value-of select="TaxonomyNavigation[@Name='AreasofInquiry']/@Label" />
</strong>
</a>
</p>
</xsl:if>
<xsl:value-of select="AreasofInquiry" disable-output-escaping="yes"/>
</xsl:template>