Kentico v9 我如何检测用户何时在 JavaScript 的 CMS 桌面
Kentico v9 how can i detect when a user is in CMS desk with JavaScript
我正在为 Google Analytics 中的自定义事件跟踪编写一些 JS。我想在网站更新时避免事件跟踪。
我确实有权更改我的主 .Master 页面后面的代码,因此向正文添加一个我可以检查的属性。
Javascript webpart 可能不是一个选项,因为这是全局代码,而不是特定于模板的代码。
我仍然会考虑可以放置在母版页上的 Web 部件,但仅当这是实时站点时才呈现。 Here 是类似的问题。
如果您正确使用 Kentico,您将拥有一个母版页,所有其他页面都继承自该母版页,因此母版页模板将为 "global",这是一个解决方案。
您不仅可以使用提到的 link Roman 中的宏(这真的不需要,因为 javascript webpart 无论如何只呈现在 "live site" 上)而且您可以更进一步,如果您的域包含 "staging":
,则仅在生产站点上使用这样的可见性宏显示它
{% !RootDocument.AbsoluteURL.Contains("staging.") @%}
这里是非webpart方式。确保您的脚本块不在 head 标记中。需要在 body 标签中,否则你会得到一个 .Net 异常(与 Kentico 无关)。
查找有效枚举列表。 LiveSite、EditLive、Preview 是我常用的几个。
<script type="text/javascript">
$(document).ready(function () {
<%if(PageManager.ViewMode == CMS.PortalEngine.ViewModeEnum.LiveSite) {%>
$('#my-control').hide();
<%}%>
});
</script>
我正在为 Google Analytics 中的自定义事件跟踪编写一些 JS。我想在网站更新时避免事件跟踪。
我确实有权更改我的主 .Master 页面后面的代码,因此向正文添加一个我可以检查的属性。
Javascript webpart 可能不是一个选项,因为这是全局代码,而不是特定于模板的代码。
我仍然会考虑可以放置在母版页上的 Web 部件,但仅当这是实时站点时才呈现。 Here 是类似的问题。
如果您正确使用 Kentico,您将拥有一个母版页,所有其他页面都继承自该母版页,因此母版页模板将为 "global",这是一个解决方案。
您不仅可以使用提到的 link Roman 中的宏(这真的不需要,因为 javascript webpart 无论如何只呈现在 "live site" 上)而且您可以更进一步,如果您的域包含 "staging":
,则仅在生产站点上使用这样的可见性宏显示它{% !RootDocument.AbsoluteURL.Contains("staging.") @%}
这里是非webpart方式。确保您的脚本块不在 head 标记中。需要在 body 标签中,否则你会得到一个 .Net 异常(与 Kentico 无关)。
查找有效枚举列表。 LiveSite、EditLive、Preview 是我常用的几个。
<script type="text/javascript">
$(document).ready(function () {
<%if(PageManager.ViewMode == CMS.PortalEngine.ViewModeEnum.LiveSite) {%>
$('#my-control').hide();
<%}%>
});
</script>