作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们目前正在为 Sitecore 编写一个模块,但遇到了问题。
我们有一个管道,可以在其中执行以下检查:
if (Sitecore.Context.PageMode.IsExperienceEditor)
{
return;
}
问题是我们的一个客户端正在运行旧版本的 Sitecore(8.0 更新 5),其中 IsExperienceEditor 属性尚不存在。请参阅 Sitecore release notes下次更新时会介绍它。
为了快速修复错误,我们使用了较旧的已弃用属性,如下所示:
if (Sitecore.Context.PageMode.IsPageEditor)
{
return;
}
现在的问题是,有什么方法可以测试 Sitecore 版本,以便我们可以在模块中实现向后兼容性?
最佳答案
您可以在您提到的两个属性的后台使用在 Sitecore 中执行的代码:
if (Sitecore.Context.Site.DisplayMode == Sitecore.Sites.DisplayMode.Edit)
{
return;
}
我知道使用 Sitecore.Context.PageMode.IsExperienceEditor
(或 Sitecore.Context.PageMode.IsPageEditor
)更优雅,但在您需要的情况下支持新旧 Sitecore 版本,这听起来是一个不错的选择。
关于Sitecore IsPageEditor 和 IsExperienceEditor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44825581/
我们目前正在为 Sitecore 编写一个模块,但遇到了问题。 我们有一个管道,可以在其中执行以下检查: if (Sitecore.Context.PageMode.IsExperienceEdito
我是一名优秀的程序员,十分优秀!