我正在现有网站上更改谷歌标签管理器的谷歌分析。这个网站也使用谷歌电子商务,所以我有一些定制ga()
与某些页面上正在进行的电子商务相关的调用。
问题是因为谷歌分析脚本是异步加载的,ga()
当我尝试发送一些电子商务相关数据时,不再定义。
我在某处找到了解决方法:
window['GoogleAnalyticsObject'] = 'ga';
window['ga'] = window['ga'] || function() {
(window['ga'].q = window['ga'].q || []).push(arguments)
};
但是,虽然我不再遇到“ga 未定义”问题,但它仍然不起作用。
我在谷歌仪表板上没有看到任何内容。我也没有在调试消息中看到任何内容(在开发人员控制台中)。
似乎发生的情况是,加载 GMT 的 GA 脚本没有使用我设置的这些变量,但我不确定如何修复它,或者是否可以继续使用我的ga()
以 GMT 通话。
我知道我可以做到dataLayer
但我试图避免为此重写一堆工作代码。
我见过这样的实现:
window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date;
ga('create', UA-XXXXXXXXXX, 'auto');
ga('require', 'ecommerce');
也许这也适合你。
如果您使用增强型电子商务,则“ga('create...”哈希下方的代码将更改为:
ga('require', 'ecommerce');
to:
ga('require', 'ec');
这里的顺序很重要,可以发送事件after这些功能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)