gpt4 book ai didi

tridion - 在 2012 UI/XM 中进行 CMS 预览与动态预览时检测到的问题

转载 作者:行者123 更新时间:2023-12-02 10:25:36 25 4
gpt4 key购买 nike

我有模板代码(2011 SP1),它通过检查engine.RenderMode(这将是PreviewDynamic)来检测是否正在使用CMS预览。然后,这将确保应用服务器通常为已发布页面添加的内容(例如 CSS、JS、导航元素等)被注入(inject)到渲染的输出中,以便预览在 CMS 中看起来不错。

Tridion 2012 UI/XM 为动态预览创建临时文件,事实证明,在发布这些文件时,渲染模式也是 PreviewDynamic,这给我带来了一个问题,就像在以下情况下一样:该页面实际上已发布,我不想注入(inject)内容(在本例中,应用服务器使用 .NET 母版页处理此问题)

查看 .NET API 中 RenderMode 的可能值,我们有 PublishPreviewStaticPreviewDynamic >.

所以我的问题是:

  1. 如何在模板代码中区分 CMS 预览和动态预览
  2. 什么时候(如果有)RenderMode PreviewStatic

最佳答案

我有一个部分解决方案(对于第一个问题)。如果您使用 RenderModeengine.PublishingContext.PublicationTarget 的组合,您可以检测 CMS 预览、动态预览和正常发布:

  • CMS 预览 - 渲染模式:DynamicPreview PublicationTarget:null
  • 动态预览 - 渲染模式:DynamicPreview PublicationTarget:not null
  • 正常发布 - 渲染模式:发布 PublicationTarget:不为 null

仍然不确定何时使用 PreviewStatic...?

关于tridion - 在 2012 UI/XM 中进行 CMS 预览与动态预览时检测到的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12929190/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com