关于Google Analytics网络跟踪的学习笔记
闲来无事翻看到以前的学习笔记,想重新复习一下并记录下来以便保留,同时也分享给各位,希望能够帮助到大家~
analytics.js 是一种可用于衡量用户与您网站的互动情况的全新方式
粘贴到网站模板页中的`</head>`结束标记前面。UA-XXXX-Y参数必须替换为您要跟踪的Google网络媒体资源的网络媒体资源ID。
#基本用法
<!-- Google 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'); ----->'__gaTracker'
ga('create', 'UA-XXXX-Y', 'auto'); //第一行会调用create命令 ----->__gaTracker();
ga('send', 'pageview'); //第二行会调用send命令 ----->__gaTracker();
</script>
<!-- End Google Analytics -->
#重命名全局对象
为避免覆盖现有对象,您可以重命名ga函数,例如改为__gaTracker。为此,您只需替换上述代码段中的ga参数
#自定义跟踪器对象
所有跟踪对象自定义工作都必须在最初创建对象时完成,方法是向ga函数传递一个配置对象作为其最后一个参数。
例如,要覆盖部分Cookie设置,您可以使用:
ga('create', 'UA-12345-6', {
'cookieDomain': 'foo.example.com', //Cookie的网域
'cookieName': 'myNewName', //名称
'cookieExpires': 20000 //过期时间
});
#在localhost上测试
在运行于localhost上的网络服务器中测试analytics.js,要设置analytics.js Cookie,
您需要使用以下命令停用默认的Cookie网域:
ga('create', 'UA-XXXX-Y', {
'cookieDomain': 'none'
});
#发送数据
发送到Google Analytics(分析)的数据称为Hit(匹配),analytics.js库允许您通过指定hitType来发送不同类型的数据。
使用send命令时,您还必须指定您要发送的数据的hitType。
例如,要发送网页浏览匹配,您可以使用:
ga('send', 'pageview');
#字段名称对象
在一些情况下,可能要覆盖作为同一项网页浏览数据发送的多个值.
analytics.js库允许您将字段名称对象作为send命令中的最后一个参数来传递
它可让您设置许多额外的网页浏览属性,例如网页标题:
ga('send', 'pageview', {
'page': '/my-new-page',
'title': 'My New Page Title'
});
#设置匹配回调
想要知道跟踪器何时完成数据传送,以确保只在系统已将用户的点击报告给Google Analytics(分析)之后才将用户送至他们的目的地
可以使用send命令在字段名称对象中指定于analytics.js完成数据发送后马上执行的hitCallback函数。
您可以按如下所示来设置hitCallback函数:
ga('send', 'pageview', {
'page': '/my-new-page',
'hitCallback': function() {
alert('analytics.js done sending data');
}
});
在此示例中,字段名称对象会配置page参数并设置hitCallback。一旦跟踪器完成数据发送,系统就会向用户显示提醒框。
#设置在多个Send命令中使用的参数
要在一个网页上跟踪一种网页浏览和两种事件,这种情况下如果您想使用自己的自定义路径覆盖每个匹配的网页路径,
您就可以在每个send命令中设置新路径,或者按如下所示使用set方法:
ga('set', 'page', '/my-custom-page');
ga('send', 'pageview');
ga('send', 'event', 'image1', 'clicked');
ga('send', 'event', 'image2', 'clicked');
#推送函数
想在analytics.js库加载后执行代码,可以将函数作为参数传递给ga函数:
ga(function() {
alert('library done loading');
});
#获取参数
通过analytics.js,可以使用get命令获取在跟踪对象中设置的任何值。
由于系统只在库加载后才会创建跟踪器对象,因此必须在已推送的函数内获取参数。
ga(function(tracker) {
var defaultPage = tracker.get('page');
});
函数使用了名为tracker的参数。在库加载完毕后,该函数即会执行,tracker的值将是通过运行第一个create命令创建的默认跟踪对象。
随后,系统将使用tracker获取默认的网页值。