繁体   English   中英

如何仅在Umbraco CMS的某些页面上显示一块模板?

[英]How do you only display a piece of a template on certain pages in Umbraco CMS?

我有一个用Umbraco构建的网站,该网站的边栏包含几个小部件设置。 我需要对其进行设置,以使其中一个小部件(作为XSLT完成)仅显示在特定页面上。 我看过使用xsl:if测试并匹配,但无法弄清楚。

您处在正确的轨道上,但是养成了在问题(代码等)中包含已经尝试过的内容的习惯。

快速+肮脏的方法

找出您的页面ID(在“内容”部分的节点的属性选项卡上找到),然后使用以下代码:

<xsl:if test="$currentPage/@id = 1234">
    <!-- your widget here -->
</xsl:if>

清洁方法

始终尝试构建可扩展的代码,例如,您可能会发现将来希望将小部件包含在另一个页面上,或者从暂存到生产的阶段部署内容可能会涉及到节点ID的更改,而您却没有意识到(通常,但有可能发生)。

将一个属性以true / false数据类型添加到有问题的页面(我们将其showMyFancyWidget ),在“内容”部分中轻拂该属性,然后使用以下代码:

<xsl:if test="$currentPage/showMyFancyWidget = 1">
    <!-- your widget here -->
</xsl:if>

此代码将适用于Umbraco v4.5.1及更高版本。 对v5不太确定,但是无论如何都不再支持v4.7

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM