Tridion 使用2个模板进行动态组件链接
假设我有一个使用集合模式的组件,该组件与两个相反的组件模板一起使用,例如: 组成部分:产品A 模板一:产品营销 模板二:产品支持 通过动态组件链接,我希望能够使用组件的tcm uri指定内容所在位置的超链接(使用dreamweaver模板,即Tridion 使用2个模板进行动态组件链接,tridion,Tridion,假设我有一个使用集合模式的组件,该组件与两个相反的组件模板一起使用,例如: 组成部分:产品A 模板一:产品营销 模板二:产品支持 通过动态组件链接,我希望能够使用组件的tcm uri指定内容所在位置的超链接(使用dreamweaver模板,即) 但问题是,如果链接生成到我正在处理的网站的错误部分,即产品营销部分的产品支持链接,反之亦然 我试过设置模板的链接优先级…都设置为高…但是Tridion似乎使用了上一个发布的模板来决定链接应该放在哪里 另外,如果我将其中一个模板设置为“中”,另一个设置为“
)
但问题是,如果链接生成到我正在处理的网站的错误部分,即产品营销部分的产品支持链接,反之亦然
我试过设置模板的链接优先级…都设置为高…但是Tridion似乎使用了上一个发布的模板来决定链接应该放在哪里
另外,如果我将其中一个模板设置为“中”,另一个设置为“高”,则只需使用具有最高优先级的模板获取指向内容的链接(即所有指向产品支持的链接,即使是在产品营销部分)
有人知道如何解决这个问题吗?谢谢 您的问题与已发布组件演示文稿的上下文相关。SDL Tridion按如下方式解析目标CP的优先级(仅当存在多个匹配项时才移动到下一步):
这可能无助于你解决问题,但它确实解释了你所看到的。因此,我可以提供更多帮助,请解释您发布的内容(是DCP吗?),并可能查看发布的代码,检查链接代码中是否添加了页面URI(确保它不是tcm:0-0-0)。除了Chris注释,您可以使用tridion:excludetemplateuri属性来精确控制可以链接到哪个组件模板,具体取决于您的市场营销或支持需求 以载重吨计。。你可以用这样的东西
<a tridion:href="tcm:8-299" tridion:excludetemplateuri="tcm:8-420-32">linkText</a>
这是我要找的!也谢谢你的解释,Chris,这也有助于评估问题所在,因为我有其他使用产品架构的模板需要调整优先级。小心使用excludetemplateuri属性。在实施Tridion的12年中,我从未需要过它。在我看来,它应该只用于异常管理的极端情况。模板中的硬编码URI在迁移和调试时可能会引入各种迁移问题——就我的2 centsChris而言,我们在一个项目中使用了它们,具有类似用例的独特需求。我们没有硬编码它们,但是我们有一个C#TBB,它具有参数模式和webdav URL,该模式解析为TCM ID并设置一个包变量@Richard,正如Chris提到的,您不应该在DWT中硬编码模板ID。您应该使用Webdav URL,而C#TBB应该将Webdav URL转换为TCMID。事实上,“接近度”算法可能非常适合这里。上有链接的页面是否与需要链接的渲染位于站点的同一部分?I在CreateAndBreak.net上。不过我不知道领带。好消息!