假设我有一个使用set模式的组件,并且该组件与两个相对的组件模板一起使用,例如:
组件:产品A
模板一:产品营销
模板二:产品支持
通过动态组件链接,我希望能够使用组件的tcm uri指定内容所在位置的超链接(使用Dreamweaver模板,即<a href="tcm:11-xxxx">Link text</a>
)
问题是如果链接正在生成我正在处理的网站的错误部分,即产品营销部分的产品支持链接,反之亦然。
我已尝试设置模板的链接优先级...两者都设置为高....但Tridion似乎使用已发布的最后一个模板来决定链接应该去哪里。
另外,如果我将其中一个模板设置为中等,另一个模板设置为高,则只需使用具有最高优先级的模板(即所有链接转到产品支持,即使在产品营销部分中)链接到内容< / p>
有谁知道如何解决这个问题?谢谢!
答案 0 :(得分:8)
您的问题与已发布的组件演示文稿的上下文有关。 SDL Tridion按如下方式解析目标CP的优先级(如果有多个匹配,它只会移动到下一步):
这通常是由于您有动态组件演示(DCP)实际上不在页面上,或者由于某种原因未在链接代码中设置页面ID,因此它无法计算位置当前的CP,因此必须从上面跳过步骤(2)。
这可能无法帮助您解决问题,但它确实解释了您所看到的内容。所以我可以提供更多的帮助,请解释一下您发布的内容(是DCP吗?),并可能查看已发布的代码并检查是否已将页面URI添加到链接代码中(并确保它不是tcm) :0-0-0)
答案 1 :(得分:8)
除了Chris评论之外,您还可以使用tridion:excludetemplateuri属性来精确控制您可以链接到哪个组件模板,具体取决于您的营销或支持需求。
在DWT中你可以使用这样的东西。
<a tridion:href="tcm:8-299" tridion:excludetemplateuri="tcm:8-420-32">linkText</a>