Google Analytics 异步统计代码部署指南

09年12月初,Google推出Beta版Google Analytics统计代码-异步统计代码,10年6月左右正式启用异步统计代码。对于以前使用或准备使用Google Analytics的站长来说,怎样更新和部署Google analytics统计代码确实是一个值得重视的问题?下文小陆将为您简单介绍Google Analytics异步代码与旧代码之间的区别及新版Google Analytics异步统计代码的基本部署。

异步统计代码有什么不同?

异步代码是作为旧统计代码的一种替代,实际上旧代码也可以正常工作,不过Google推荐将旧代码更新到异步代码,并且今后Google Analytics的新用户在注册完成后获得的统计代码都是异步代码。

我们先把异步代码和旧统计代码对比一下。 旧的统计代码:

1
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">
//统计代码
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write( unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' 
type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
 
//统计元素定义
var pageTracker = _gat._getTracker("UA-xxxxxx-x");
pageTracker._trackPageview();
</script>

新的异步统计代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script type="text/javascript">
//统计元素定义
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-xxxxxx-x']);
_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>

首先,异步代码采用了新的异步算法,因此对象的定义和调用赋值有所区别,看上面的代码也是显而易见的,异步代码的特点后面会做介绍。 其次,Google Analytics统计代码分为两个部分:一部分是对统计元素的定义,另一部分则是统计功能代码,异步代码与旧代码的区别就是这两个部分顺序不同,而且这两个部分的顺序是不能颠倒的。

异步统计代码如何工作?

异步算法使用_gaq对象,它是一个队列,能够将页面上的自定义统计收集到队列中,等ga.js文件加载之后在逐一执行,而收集事件是通过_gaq.push这个方法来实现的。 比如异步代码统计常用的下载:

<a href="http://www.noahlu.com/file.zip" onclick="javascript:
_gaq.push(['_trackPageview','file.zip']);<code>" >File Download</a></code>

而用旧的统计代码调用则是:

<a href="http://www.noahlu.com/file.zip" onclick="javascript:
_pageTracker.trackPageview(‘file.zip’);" >File Download</a>

对比之下很清楚的看出两种统计代码的对应方式trackPageview 是被调用的对象,file.zip是赋值:

_gaq.push(['_trackPageview','file.zip']) //异步代码
_pageTracker.trackPageview(‘file.zip) //旧代码

其他自定义调用可类推。

异步统计代码有哪些优势?

与旧代码相比,异步统计代码有下面几点优势:

1) 加载速度 使用异步代码能够让浏览器加载页面的同时在后台夹杂ga.js文件,这样就减小了统计代码对页面加载速度的影响。 2) 统计数据的准确性 之前的Google Analytics统计代码一般放在页面代码最后面,如果在ga.js文件加载前,用户做出下载等本应该被统计的行为,这些数据将不会被收集。而使用异步代码,ga.js文件加载前发生的行为能够被准确的记录。 3) 代码出错率 如果在统计代码之前有js出错,则该页的访问和行为统统不会被记录,异步代码可以放置在页面<head>标签内,就降低了代码出错的机率。

异步统计代码的基本部署

与以前的统计代码不同,异步统计代码应该放置在</head>标签前,如果不能放在那里(因为一些博客的自定义代码可能不是那么容易控制),也应该尽可能放置在靠近</head>的位置。

常见的部署问题有: 1)  页面中同时存在新旧代码。可能某些站长的小失误造成,这完全是可以理解的,因为站点的Google Analytics部署并非简单的复制粘贴代码那么简单,还有很多自定义的调用,就上下面说的下载统计,把这些代码一一改正的确是个工程。如果想完全更新统计代码,可以批量查找比如“ga.js”、“pageTracker”、“UA-”等,然后就需要细心并且耐心的逐个替换。 2)  统计代码顺序错误。本文第一部分介绍了异步统计代码的两个部分,位置上不能够互换的。 3)  其他一些错误,比如调用的对象大小写不正确、对象名不正确,这里推荐参考Google提供的异步代码使用文档

posted on 2012-03-10 11:35  tianyaxiang  阅读(2989)  评论(0编辑  收藏  举报

导航