我有模板代码(2011 SP1),它通过检查engine.RenderMode
(可能是PreviewDynamic
)来检测是否正在使用CMS预览。这将确保应用服务器通常为已发布页面添加的内容(如CSS,JS,导航元素等)被注入到渲染输出中,因此预览在CMS中看起来不错。
Tridion 2012 UI / XM创建用于动态预览的临时文件,结果是在发布这些文件时,渲染模式也是PreviewDynamic
,这给我一个问题,就像页面是实际发布,我不想注入东西(在这种情况下,应用服务器用.NET母版页来处理这个)
查看.NET API中RenderMode
的可能值,我们有Publish
,PreviewStatic
和PreviewDynamic
。
所以我的问题是:
PreviewStatic
?答案 0 :(得分:5)
我有部分解决方案(第一个问题)。如果您使用RenderMode
和engine.PublishingContext.PublicationTarget
的组合,则可以检测到CMS预览与动态预览与正常发布的对比:
DynamicPreview
PublicationTarget:null DynamicPreview
PublicationTarget:not null Publish
PublicationTarget:not null Stil不确定何时使用PreviewStatic ......?