我在Google跟踪代码管理器中设置了以下自定义HTML代码(注意:我知道您可以创建通用分析代码类型,但是,由于设置,我必须使用自定义HTML代码类型)。
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', {{uaid}}, 'auto', {
'allowLinker': true
});
// Load the plugin.
ga('require', 'linker');
// Define which domains to autoLink.
ga('linker:autoLink', [{{cross domains}}]);
// enhanced link attribution
ga('require', 'linkid', 'linkid.js');
// send
ga('send', 'pageview');
其中{{uaid}}
是我的通用分析跟踪编号,{{ cross domains }}
是我正在尝试正确跟踪的域名列表 - 即['mydomain.com','seconddomain.com',' thirddomain.com。
我有sub.mydomain.com
我也想跟踪。上述mydomain.com
列表中的{{ cross domains }}
是否会考虑所有子域名?
基本上,我已经通过Google的文档设置了所有这些内容。我怎样才能确保它正常工作?
答案 0 :(得分:5)
您发布的代码看起来没问题,假设您没有拼错您的域名等。
是的,指定mydomain.com
应涵盖所有子域名,例如foobar.mydomain.com
。
要测试它,请转到其中一个域的页面,该域链接到另一个域。
注意:选择一个转到不同的根域。从mydomain.com
转到foobar.mydomain.com
将无法帮助您对此进行测试,因为cookie是在根域上设置的,并且不会调用任何特殊内容。
使用您喜欢的工具查看对GA的请求。例如,使用浏览器的开发者工具&gt;网络标签。
请求网址如下所示:
http://www.google-analytics.com/collect?...
在网址中,您应该看到cid
param看起来像这样:
cid=1885489529.1395091795
这是客户端ID(访客ID)。现在,单击页面上链接到列表中另一个域的链接。您应该看到目标页面应附加_ga
参数,如下所示:
_ga=1.241257986.1885489529.1395091795
在目标网页上的www.google-analytics.com
请求中,您应该看到在第一页上看到的相同cid
参数。
cid=1885489529.1395091795
如果原始页面的cid
与目标页面匹配,则表示页面视图使用相同的客户端/访客ID,并将计为报告中的相同访问(或)。
注意: cid
和_ga
值是访问者唯一的,因此您应该看到该格式的值,而不是那些确切的数字。
注意: GA的跨域跟踪基本上只适用于没有发生任何其他类型欺骗的标准链接。例如,如果您在运行GA代码后生成了链接,则无法使用。或者,如果您有非标准退出链接(例如,转到某个控制器页面并最终重定向到目标站点的链接,或者没有使用javascript最终重定向的href的链接),那么这将无效。对于这些链接,您需要follow the documentation来调用GA方法来获取_ga
参数,并使用您自己的方法将其附加到网址。