我使用analytics.js脚本跟踪3个站点 - 两个二级域名,一个是子域名...例如:dom1.com,sub.dom1.com,dom2.com
我遇到问题的脚本和网站是本例中的dom1.com。我有2个属性应该聚合以下数据:
物业A:dom1.com + sub.dom1.com 物业B:dom1.com + sub.dom1.com + dom2.com
我一直在寻找代码中的错误,但无法解决问题,即:
在属性A中,所有内容都正确聚合,域和子域都正在发送数据。在属性B sub.dom1.com和dom2.com确实发送他们的数据,但dom1.com没有。
这是dom1.com标题中的脚本:
ga('create', 'PropertyA', 'auto', {'name': 'trackerA'}, {'allowLinker': true});
ga('trackerA.send', 'pageview');
ga('require', 'linker');
ga('linker:autoLink', ['sub.dom1.com', 'dom1.com']);
ga('create', 'PropertyB', 'auto', {'name': 'trackerB'}, {'allowLinker': true});
ga('trackerB.send', 'pageview');
ga('require', 'linker');
ga('linker:autoLink', ['sub.dom1.com', 'dom1.com', 'dom2.com']);
我已经尝试过移动第二个跟踪器,以防脚本没有运行,但它没有解决任何问题。我认为问题是在我试图使用链接器2次的方式,但也许做错了?
感谢您的帮助,希望它也可以帮助其他人。
答案 0 :(得分:3)
您的实施存在一些问题(并非所有这些都会导致您的问题,但它们仍然是最佳做法):
通常,在对跟踪器执行任何其他操作之前,应始终要求所有插件并调用插件初始化,因为许多插件会更改存储在跟踪器上的行为和/或数据。
您无需在autoLink
方法中指定子域,因为您使用auto
启用自动Cookie域配置,因此会自动跟踪这些子域。
您不能将两个对象传递给create
方法,而应将这些选项合并到一个对象中或使用速记(例如ga('create', trackingID, cookieDomain, trackerName, additionalConfigOptions);
使用多个跟踪器时,必须在需要插件和调用插件方法时指定跟踪器名称(例如ga('trackerName.require', 'pluginName');
和ga('trackerName.pluginName:methodName', methodOptions);
)
如果您按如下方式更新代码,则应该有效:
ga('create', 'PropertyA', 'auto', 'trackerA', {'allowLinker': true});
ga('trackerA.require', 'linker');
ga('trackerA.linker:autoLink', ['dom1.com']);
ga('trackerA.send', 'pageview');
ga('create', 'PropertyB', 'auto', 'trackerB', {'allowLinker': true});
ga('trackerB.require', 'linker');
ga('trackerB.linker:autoLink', ['dom1.com', 'dom2.com']);
ga('trackerB.send', 'pageview');
答案 1 :(得分:0)
当您致电"要求"时,您需要包含跟踪器名称。和#34;链接器"方法:
ga('trackerA.require', 'linker');
ga('trackerA.linker:autoLink', ['sub.dom1.com', 'dom1.com']);
与物业B相同。