【问题标题】:How to Track Clicks in an IFrame with Google Analytics?如何使用 Google Analytics 跟踪 IFrame 中的点击次数?
【发布时间】:2013-09-28 19:18:24
【问题描述】:

我想在我的自托管 Wordpress 网站上跟踪 iframe 内的出站点击。我已经使用 Google Analytics 来跟踪入站访问者(标题中的 GA 代码),但我想知道这些访问者中有哪些/有多少点击了我每个页面上 iframe 中的链接。郑重声明,iframe 确实来自外部广告商。

这是给我的 iframe 代码(使用示例名称代替真实名称):

<iframe src="http://www.advertisersite123.com//widget.html?width=510&height=950&product=2" frameborder="0" scrolling="no" width="510" height="950"></iframe>

这行代码目前粘贴在single.php 上,在页面底部的每个帖子上都会出现一个链接表。

我想知道在这个 iframe 中发生了多少点击(一般来说点击就可以了,不需要知道他们去哪里了)。理想情况下,按我网站上的每个单独 URL 进行细分,这样我就可以确定哪些 URL 在 iframe 中更成功地产生点击。

如果可能,我想创建一个漏斗,告诉我哪些访问者(按来源)通过 iframe 中的点击退出。

这有可能吗?如果是这样,我应该在页面中添加什么代码?

感谢您的任何和所有帮助,不胜感激!

【问题讨论】:

    标签: javascript wordpress iframe google-analytics tracking


    【解决方案1】:

    您所要求的并非易事。通常,如果 iframed 页面未托管在同一域上,则不能在父页面上使用 javascript 来挂钩 iframed 页面上的事件。尝试利用父页面的 DOM 的 iframe 页面也是如此。这称为跨站点脚本 (XSS),它违反了相同的域源策略。

    至少,最简单的做法是将 GA 代码放在 iframed 页面上。但这可能不是您可以做的(尽管询问供应商并没有什么坏处)。

    但一些供应商(通常是 Facebook、Google 和 Twitter 等社交媒体供应商)将拥有输出带有信息的 iframe 的小部件。他们将设置他们的服务器以允许跨域脚本,这将允许您利用 iframe 的 DOM。通常,尽管它们提供了一个 API 以及小部件,可以更轻松地挂钩相关事件(如共享事件),因此您不必自己进行(很多)编码。

    长话短说,如果没有 iframe 域的负责人参与,您将无法跟踪它。

    【讨论】:

    • 明白。谢谢你为我解决这个问题。因此,甚至没有办法知道有多少访问者通过 iframe 退出这样“简单”的事情?或者类似于后门分析并获得粗略估计的东西?
    • 不,没有,除非你在 iframe 页面本身上做一些事情。了解这是一种安全措施,当页面是不同的域时,页面不应该对 iframe 具有可见性,反之亦然。如果允许的话,各种疯狂都可能接踵而至。我感受你;这是一个巨大的绊脚石,分析与第 3 方供应商的东西被 iframeed 到页面上:( 但它就是这样
    • 由于安全策略很可能永远不会消失,唯一的选择是与供应商合作对他们的 iframe 内容实施跟踪,或者想出一个不同的系统来将信息包含在页。也许供应商提供了一个服务器端 API,可以让您在服务器端检索内容,然后您可以在父页面上输出内容,就好像它是您自己的内容一样。然后你就可以很容易地将 GA 的东西附加到它上面。您会惊讶于第三方供应商愿意使用这种东西的频率
    • 能够为人们提供分析 API 的第三方供应商对他们来说是一个很好的卖点。我亲自与大量随机提供商合作来建立这种东西。
    • 感谢您提供的信息和建议。看起来我必须与广告商交谈,看看他们能为我做什么,因为目前跟踪完全无效。你会认为这些公司会关心这样的事情......
    【解决方案2】:

    我正在寻找类似的东西并遇到了这个。这个 jQuery Plugin 可让您跟踪 Iframe。

    【讨论】:

    • 这很好,但不适用于移动设备,因为它依赖于鼠标位置。
    【解决方案3】:

    尝试过的事件?

    如果点击超出 iframe:

    _gaq.push(['_trackEvent', eventCategory, eventAtion, eventLabel]);
    

    如果点击在你应该使用的 iframe 内:

    window.parent._gaq.push(['_trackEvent', eventCategory, eventAtion, eventLabel]);
    

    【讨论】:

    • 只有在您同时控制主机网站和 iframe 内容网站的情况下,这才是合理的。在 OP 的情况下,这是行不通的
    猜你喜欢
    • 1970-01-01
    • 2015-05-30
    • 1970-01-01
    • 2014-05-29
    • 1970-01-01
    • 1970-01-01
    • 2011-09-08
    • 1970-01-01
    • 2019-03-08
    相关资源
    最近更新 更多