Kentico v9我如何通过JavaScript检测用户在CMS桌面的时间

时间:2016-03-17 12:22:55

标签: kentico

我正在为Google Analytics中的自定义事件跟踪编写一些JS。我希望在网站更新时避免事件跟踪。

我有权更改我的主.Master页面后面的代码,所以添加一个属性到我可以检查的身体。

Javascript webpart可能不是一个选项,因为这是全局代码,而非模板特定的。

3 个答案:

答案 0 :(得分:1)

我仍然会考虑可以放在母版页上的Web部件,但只有在这是实时网站时才会呈现。 Here是类似的问题。

答案 1 :(得分:1)

如果您正确使用Kentico,您将拥有一个主页面,其他所有页面都将继承,因此主页面模板将是“全局”,这是一个解决方案。

你不仅可以在罗马提到的链接中使用宏(这实际上是不需要的,因为javascript webpart只会在“实际网站”上呈现)但是你可以更进一步让它只显示在如果您的域包含“staging”,则生成具有此类可见性宏的站点:

{% !RootDocument.AbsoluteURL.Contains("staging.") @%}

答案 2 :(得分:0)

这是非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>