最近推出了全球网站代码或gtag.js作为安装Google Analytics(GA)的推荐脚本格式。但我发现您也可以使用它来安装Google跟踪代码管理器(GTM)。
http://jesscarranza.blogspot.com/2017/11/use-gtagjs-to-install-google-tag-manager.html
任何JavaScript专家都可以验证以下两个脚本在功能上是否相同?
GTM using gtag.js
<script async src="https://www.googletagmanager.com/gtag/js?id=GTM-XXXX"></script>
<script>window.dataLayer=window.dataLayer||[];
function gtag(){dataLayer.push(arguments);}
gtag('js',new Date());</script>
GTM official code:
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXX');</script>
答案 0 :(得分:0)
AFAIK(我不是“Javascript专家”),新的gtag就像是“Google的网站衡量,转换跟踪和再营销产品”的包装,可让您完成与gtm完全相同的事情.js库,所以从最终用户pov来看,你在一天结束时得到的东西没有区别。 gtag.js库的真正好处是,您还需要包含其他基于分析的库,例如AdWords和Firebase或其他未来的集成。
答案 1 :(得分:0)
它们在功能上并不相同,不是因为原则上有任何错误,而是因为您的遗漏 - 标准GTM代码传递默认事件和时间戳。传入一个空变量(“参数”),从而丢失了pageview / gtm.js事件。所以你需要修复,至少,这应该没有问题。
然而,就目前而言,我不确定你将如何从中获利。 gtag是为不同的Google产品提供公共集成点的包装器,如果您使用GTM,您可能也会通过GTM部署其他Google标签,因此您实际上并不需要其他包装器。
也许谷歌会在某些时候更改其建议,为其所有产品提供单一代码段,但目前我认为这不会为您带来任何好处,除了尝试外面的一些荣誉。