如何阻止HTML源代码编辑器剥离Google Analytics事件跟踪代码?

时间:2013-01-16 17:02:26

标签: google-analytics plone

我正在尝试使用TinyMCE编辑器的HTML源视图将事件跟踪代码(onClick =“gaq.push();”部分)添加到页面内容区域内的链接HTML。只要我保存页面或切换回可视编辑器,就会从链接的HTML中删除事件跟踪。

在搜索中,我发现其他CMS必须更改其HTML过滤器设置。

我想知道的是,如何在没有白名单标记的情况下阻止事件跟踪代码被剥离,这是Plone中的全局设置?

使用:Plone 4.2.1;异步GA代码已经在现场并且正在运行

3 个答案:

答案 0 :(得分:3)

我认为你可以在Zope管理界面的“hood”a.k.a.下配置它。

  1. 转到Site Setup,然后点击Zope Management Interface。 或者,如果您位于根目录上,请在URL上附加/manage 您的门户网站。

  2. 转到portal_transforms,然后点击列表中的safe_html 变换。

  3. 表单应该有一个标记为remove_javascript的项目 默认设置为1。通过将此选项设置为0来取消设置此选项。

  4. 点击否Submit Query

  5. 保存此表单

    要考虑使其最终有效的几点:

    • 您需要刷新对象缓存和/或重新启动Zope服务器。它在safe_html转换的顶部进行了描述。

    • TinyMCE不会显示属性。您需要在没有richtext编辑器的情况下编辑文本并保存文档。您可以通过单击编辑页面上编辑器下方的Edit without visual editor链接来完成此操作。

    • 会带来安全风险。最好将这样的功能实现为视图,并在页面上需要此功能时让视图呈现。

    底线是:你可以启用它,这是有风险的,并且有更好的方法来实现这一目标。

答案 1 :(得分:1)

更好的方法是使用collective.googleanalytics,它使用jquery注入额外的标签,并有一个可插入的框架,用于自定义注入的内容。这是一种安全且可扩展的方式来做这种事情。

答案 2 :(得分:1)

对罗曼诺夫斯基的答案采取后续行动 - 对于那些像我一样感到困惑的人如何Edit without visual editor如果该链接不可用。您可以转到Site setup > Editing control panelhttp://yoursite.com/@@editing-controlpanel,暂时将默认编辑器设置为None,在您希望打开js的页面或portlet上进行编辑,然后将其切换回{ {1}}。