我意识到这可能有点反直觉......但是在复合组件模板中,是否有方便的方法来访问正在呈现的页面的Page对象或TCM URI?我意识到如果将组件模板呈现到代理或使用模板构建器进行调试,结果可能为null。但我想获得页面ID,如果它可用。
答案 0 :(得分:2)
是的,您可以创建TBB来执行此操作。如果您查看sdltridionworld.com,可以使用Generic SDL Tridion 2011模板构建模块:https://sdltridionworld.com/community/2011_extensions/generic-2011-tbbs.aspx
在那里有一个名为TemplateBase的手工文件,其中包含一个名为GetPage的方法。您可以使用它来获取TBB中的页面,然后将页面ID推送到包中。
答案 1 :(得分:2)
此Stack Exchange问题也涵盖了(对于C#TBB):https://tridion.stackexchange.com/questions/743/accessing-page-object-in-c-tbb-used-in-the-component-template