我有一个网站构建器应用程序,用户可以在其中创建自己的网站。
每个客户将其域名指向应用程序的IP,该应用程序具有自己的UA代码,用于收集数据并在后台显示页面浏览量统计信息。此外,如果客户拥有自己的Google Analytics帐户,则可以指明该帐户并开始跟踪数据。
当前的前端ga.js代码如下所示:
<script type="text/javascript">
var _gaq = _gaq || [];
/* app UA code */
_gaq.push(['x._setAccount', 'UA-XXXXXXX']);
_gaq.push(['x._setDomainName', 'customersdomain.com']);
_gaq.push(['x._setAllowLinker', true]);
_gaq.push(['x._trackPageview']);
/* customer's UA code */
_gaq.push(['_setAccount', 'UA-YYYYYY']);
_gaq.push(['_trackPageview']);
(function () {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
</script>
现在我需要迁移到Universal Analytics,但我不确定应该使用哪些代码。我做了很多搜索,但我仍然怀疑。以下代码是否有效?
<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', 'UA-XXXXXXX', 'customersdomain.com');
ga('create', 'UA-YYYYYYY', 'customersdomain.com');
ga('send', 'pageview');
</script>
答案 0 :(得分:2)
您需要named tracker。您可以在配置对象中设置它,该配置对象可以作为第三个参数而不是cookie域传递(在这种情况下,cookieDomain设置将进入配置对象)。另外,您需要两次发送综合浏览量,每个跟踪器一次。
<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', 'UA-XXXXXXX', {
'name' : 'mycustomtracker',
'cookieDomain' : 'customersdomain.com'
});
ga('create', 'UA-YYYYYYY', 'customersdomain.com');
ga('mycustomtracker.send', 'pageview');
ga('send', 'pageview');
</script>