在iframe中运行Google Analytics(分析)?

时间:2020-03-06 14:54:22  来源:igfitidea点击:

我们公司与会员合作伙伴一起运营一个网站(oursite.com),向我们发送流量。在某些情况下,我们会使用自己的子域(affiliate.oursite.com)来建立我们的会员,并且他们使用iframe在其网站(affiliate.com)上显示我们网站上的选定内容。

他们网站上的页面示例:

<html>
<head></head>
<body>
<iframe src="affiliate.example.com/example_page.html">
...content...
[google analytics code for affiliate.oursite.com]
</iframe>
[google analytics code for affiliate.com]
</body>
</html>

我们希望Google Analytics(分析)可以跟踪affiliate.oursite.com。目前,从iframe加载页面时,Google似乎没有从联属会员那里收到任何数据。

现在,存在安全隐患,因为Javascript不喜欢访问有关其他域中页面的信息,而IE不喜欢为其他域设置cookie。

有人对此有解决方案吗?我们是否需要CNAME将affiliate.oursite.com更改为cname.oursite.com,还是有一个更清洁的解决方案?

解决方案

  • 我们必须将Google Analytics(分析)跟踪代码添加到" example_page.html"的末尾。 <iframe>-</ iframe>`标签之间的内容仅针对不支持该特定标签的浏览器显示。
  • 我们是否需要合并来自子域的结果,Google的帮助网站上有一篇很棒的文章:如何在一个配置文件中跟踪网站的所有子域?

抱歉,但是行不通。原因是因为Google Analytics(分析)使用第一方Cookie。这意味着GA设置的Cookie特定于代码所在的域。情况下,iFrame位于第三方域上。这意味着我们将拥有两组GA Cookie(每个域一组),并且没有真正的方法来协调数据。

在iframe的具体情况下,Google不会说太多。我曾经遇到过同样的情况,但很高兴我发现了这一点。我在这里发布了一个演练。它是法语的,但是我们无需使用语言即可复制/粘贴代码。另外还有一个演示文件,我们可以下载。