【发布时间】:2012-12-09 22:09:18
【问题描述】:
使用 Tridion 管理“全球”徽标
例如,要使用 SDL Tridion 管理网站范围的徽标及其文本元素,我希望它在一个组件中,由(动态)组件模板呈现,并由页面模板放置。我的要求包括:
- Logo as a Component--图像作为多媒体 (mm) 组件和链接、alt(即“home”)以及可选容器组件中的其他文本
- 动态组件展示 (DCP)--能够管理徽标的标记展示并发布更改无需发布每个页面
- 可共享--能够在较低级出版物中本地化组件中的多媒体和文本,而不是模板
作者不需要将徽标作为组件演示 (CP) 放置在每个页面上,尽管仅在主页上的徽标 CP 可以提供动态链接。
RenderComponentPresentation()、TCDL 或 Tridion 标记“非 CP”
对于这种无 CP 的方法,我认为 RenderComponentPresentation() 或 TCDL tag 将是正确的“不可知论”方法。一个比另一个更受欢迎吗?
例如,我的模板输出:
<h3>By tridion: (ASP.NET) tag</h3>
<tridion:ComponentPresentation runat="server"
PageURI="tcm:7-1535-64"
ComponentURI="tcm:7-1533"
TemplateURI="tcm:7-1532-32"/>
<h3>By tcdl: tag</h3>
<tcdl:ComponentPresentation
PageURI="@@Page.ID@@"
type="Dynamic"
ComponentURI="tcm:7-1533"
TemplateURI="tcm:7-1532-32"/>
<h3>by render component presentation</h3>
@@RenderComponentPresentation('tcm:7-1533','tcm:7-1532-32')@@
这些在文件系统上被转换为以下内容。
<h3>By tridion: (ASP.NET) tag</h3>
<tridion:ComponentPresentation runat="server"
PageURI="tcm:7-1535-64"
ComponentURI="tcm:7-1533"
TemplateURI="tcm:7-1532-32"/>
<h3>By tcdl: tag</h3>
<tridion:ComponentPresentation runat="server"
PageURI="tcm:7-1535-64"
ComponentURI="tcm:7-1533"
TemplateURI="tcm:7-1532-32"/>
<h3>by render component presentation</h3>
<tridion:ComponentPresentation runat="server"
PageURI="tcm:7-1535-64"
ComponentURI="tcm:7-1533"
TemplateURI="tcm:7-1532-32"/>
每个呈现交付端,以便用户在浏览器中看到正确的 CP。
问题:
任何方法都可以让我们获得从 PT 引用的 DCP,该 DCP 具有不可知格式,可在演示端检索,避免全站点发布。它实际上并不在页面上上,所以我们必须确保发布带有动态 CT 的徽标(在这种情况下是 html 片段)。 我错过了什么吗?
RenderComponentPresentation() 是否优于 TCDL 或特定的演示端语法? 有什么理由我实际上想要
<tridion:ComponentPresentation runat="server">代替?
编辑:我错过了Type="Dynamic" 属性和值,还一度认为 RenderComponentPresentation 没有创建正确的 CP 引用。
【问题讨论】:
标签: tridion tridion-content-delivery