标记页面
注册过程中最重要的部分是配置文件的倒数第二步,在这一页列出了应放置在所有页面的特有标签。这被称为 Google Analytics 跟踪代码(GATC)。使用一个信标来收集访问者数据——每一页都是完全一样的标签——这使 Google Analytics 的安装很简单。
2009 年 12 月,Google Analytics 的新一代跟踪代码异步跟踪代码,最初为 beta 版,目前已经全面取代 ga.Js。使用异步跟踪代码的加载时间将缩短。(Cloga:以后的内容将增加异步跟踪代码的内容介绍,由于这部分的中文内容比较少,本人知识有限,所出现的错误,请各位见谅。)
理解 Google Analytics 跟踪代码
GATC 是粘贴到你的网站上的一小段 JavaScript 代码。代码是隐藏的,并且作为收集访问者数据并将其发送给 Google Analytics 数据收据服务器的标记。如图 6.2 所示。
图 6.2 添加到网站上的 Google Analytics 异步跟踪代码
注:如果你已经设置了 Google Analytics 账号,那么你能从配置文件设置访问设置如图
6.2 所示。点击"检查状态"链接。
第 3 章"Google Analytics 的特性、优势和局限"的图 3.2 以图解的方式解释了 GATC的原理。在这里更详细的讨论一下这些代码。其实,GATC 包括 3 个部分:
(1)从 Google 服务器调用 JavaScript 主文件 主文件 ga.js 包括进行数据收集所必须的代码。这个文件的大小大约 24KB,一旦请求过那么它将在访问者的浏览器缓存中,能被用于随后的页面浏览。所有 Google Analytics 的账户都是这一个文件。因而,如果你的访问者最近了也安装了 Google Analytics 的其他网站(这很可能),那么,ga.js 文件可能根本不需要请求。
尽管这一段 GATC 看起来很长,但是,它只是检测是通过标准的 HTTPweb 请求还是通过 HTTPS(加密)协议下载 ga.js。这种自动检测意味着访问者进入网站的安全区域,例如输入信用卡信息时,你不需要改变任何事。
(2)UA--XXXX-YY 形式的惟一账户 ID 这个 ID 对每一个 Google Analytics 账户是惟一的,并且必须被准确引用,否则,你的数据将被发送到别的账户。这种情况可能意外发生(实施错误),也可能故意发生(人们希望通过在别的地方使用你的账户 ID 来"污染"你的数据)。你能使用过滤器来避免,我们将在第 8 章"最佳配置指南"中讨论这些。
( 3 )调用函数 _trackPageview() 这 是 Google Analytics 的主力。 实际上,_gaq.push(['_trackPageview'])这一行收集访问者下载到浏览器中的 URL 以及相关参数,比如,浏览器类型、语言设置、引荐网址和时间戳。然后读取并设置 Cookies,这个信息被发送回Google 数据收集服务器。
注:在原 ga.js 代码中,第 2、3 部分被包含在 try-catch 代码块中。这是处理 JavaScript错误的小技巧——避免向访问者显示多余的错误信息。例如,如果访问者所安装的广告拦截器(例如,火狐的广告拦截插件)禁止了 ga.js 的加载,那么,当_trackPageview()试图与其通信时,将发生错误。使用 try-catch 代码,这个错误将被捕捉(不显示),并且不会跟踪访问者。这比向访问者显示不相关的信息更好。
你也许在图 6.2 中注意到了 GATC 的其他选项。这些选项在顶部的选项卡菜单显示为标准、高级和自定义。在标准选项卡中,其实,如果你只有一个域名需要跟踪,例如,www.mysite.com,那么单个域名的 GATC 正是你所需要的。当你有一个含有多个二级域名的网站需要跟踪,例如 www.mysite.com 和 cloga.mysite.com 时,则应选择一个域名包含多个子域名。如果你需要跨域跟踪,比如,使用第三方购物车,那么,请选择多个顶级域。高级及自定义变量将在第 7 章"高级实施"的"自定义 GATC"中涉及。
从 ga.js 迁移到异步跟踪代码
将你的页面改为使用异步跟踪代码,请遵循以下步骤:
1.删除已有的跟踪代码及其相关自定义设置。
为了减少错误,我们建议你在包含代码段的文件中使用文字或 HTML 编辑器删除代码段。如要保留任何自定义设置,您可以先将旧版的跟踪代码段复制到另一个文件中,以便稍后重新添加这些设置。
2.在
部分的底部,你的页面或模板可能使用其他脚本之后插入异步 ga.js 段。异步 ga.js 段的优势之一是你能将其放在 HTML 文件顶部。这增加了在用户离开页面前发送跟踪信标的机会。我们发现在大多数页面,异步 ga.js 段的最佳位置是
部分的底部, 刚好在标签的前面。3.将_setAccount 修改为你的网络资源 ID在 Google Analytics 中,网络资源是指设置了特定跟踪代码的一组页面。在 Analytics跟踪代码中,配置文件的网络资源有一个惟一的 ID,与账户 ID 及额外的数字组合在一起。
网络资源 ID 与一个 Analytics 账户中一个或多个配置文件的网络资源连接。这个 ID 可以在 Analytics 的概述界面中找到,也可以在页面源代码中搜索"UA-"来查找。网站资源ID 两部分:
· X(UA-XXXXX-YY)代表账户编号·Y(UA-XXXXX-YY)代表账户内配置文件编号。(Cloga:在同一账户内,为新域添加配置文件会生成新的配置文件代码,需要重新部署 GATC,而为现有域添加配置文件则与同一域中的配置文件相同,不需要重新部署 GATC,实际上属于配置文件的复制,在稍后的部分将详细介绍。)整个字符串(UA-XXXXX-YY)表示你的网络资源 ID。
部署 GATC
接下来,你需要做的是在页面上放置 GATC。如果你有一个只有为数不多页面相对较小的网站,那么,你可以将 GATC 复制粘贴到 HTML 中。或者,如果你使用模板或内容管理系统(CMS)建立自己的网站,那么你只需将 GATC 复制到主模板或顶部文件中。最佳位置是
部分的底部,刚好在标签的前面。(Cloga:老版的 ga.js 的建议位置是刚好在标签的前面)。标记好页面之后,你应该能在 4 个小时内看到你的数据。但是,对于一个新账户,可能需要等 24 小时,因此,请保持耐心!
部署 GATC 的一个重要方面是必须将其粘贴到所有页面中。如第 2 章 "现有的方法及其准确性"中所述,遗漏页面标签是令人怀疑你的数据准确性的主要原因。除了不正确的访问者及综合浏览量之外,你还会发现,你的网站自身成为了引荐网站,完全丢失引荐网站信息,有一个明显过长或过短的网站停留时间和页面停留时间,不正常的跳出率及其他奇怪的现象。
遗漏页面标签的比率越大,准确性越差。作为指南,我以 98%的 GATC 部署率为目标。
即,你的页面的 98%应有 GATC,以保证报告的效度。低于这一指标就需要研究。如果你的部署率低于 90%,那么不要用你的报告打扰我——先解决这个问题。表 6.1,列出了可用于GATC 部署问题的工具。附录 B 列出了其他的问题排查工具。
工具名称 | 备注 |
---|---|
SiteScan by EpikOne | 免费及付费SaaS厂商。进行GATC的文本搜索和正则表达式匹配: www.sitescanga.com。 |
WASP (Web Analytics Solution Profiler) | 一个Firefox插件,能用来检查GATC及其他200多种厂商的cookie设置。以一页一页(免费)或整站搜索(付费)的方式工作: www.webanalyticssolutionprofiler.com。 |
Joost de Valk's statistics detector | 免费的Firefox Greasemonkey脚本。进行GATC及其他厂商工具的文本搜索和正则表达式匹配:只能以一页一页的方式工作: http://yoast.com/tools/seo/greasemonkey/statistics-detector/。 |
ObservePoint | 付费的SaaS厂商。检查GATC及Omniture的cookie。以整站搜索及监视/警告工具的方式工作:www.observepoint.com。 |
Accenture Digital Diagnostics(之前是Maxamine) | 付费SaaS厂商。高端的网站诊断工具: www.accenture.com/Global/Consulting/Marketing_and_Sales_Effectiveness/Digital/Transformation_Suite/AMSDiagnostics.htm。 |
表 6.1 有助于 GATC 部署问题排查的工具
尽管拥有CMS是插入GATC的可靠方法,你仍需要确定GATC包含在所有新建页面中——不要经常认为这些是默认的——以及那些没有使用标准模板的页面。如果你没有内容管理系统,有许多替代的方法可以自动。这些方法中的两个是Apache的mod_layout及PHP的auto_append_file。
mod_layout是Apache web服务器加载的一个模块(原则上与插件类似)。如果你使用Apache,那么让你开发团队或托管业务提供商从http://tangent.org安装mod_layout的可加载模块。实施成功后,Apache web服务器将自动在它所服务的每一个页面插入GATC。注意,这意味着每一个页面都实施了GATC,因此,你应该将那些不需要GATC的页面添加到排除规则中,比如robots.txt, cgi-bin文件等。
mod_layout的完整介绍超出了本书的范畴,但是,下面的代码段给出了一个httpd.conf文件的设置例子。在这个例子中,忽略了两个文件类型(*.cgl和*.txt),utm_GA.htm(GATC的内容——如图6.2)的文件内容将被插入在HTML页面中标签的前面:
#mod_layout directivesLayoutMergeBeginTag LayoutIgnoreURI *.cgiLayoutIgnoreURI *.txtLayoutHeader /var/www/html/mysite.com/utm_GA.htmlLayoutMerge On
提醒:如果你的页面使用CAPTCHA方法(Cloga:学名叫全自动区分计算机和人类的图灵测试,超长超拗口,简称验证码,见http://baike.baidu.com/view/538168.htm?fr=ala0_1_1)产生的安全图片来保护网站避免自动表格提交,请检查你的安全图片仍能加载。如果无法加载,你可能需要从mod_layout排除调用安全图片的嵌入文件。
如果你的页面是由PHP产生的(文件名以.php结束),那么,你能使用auto_append_file指令。
这个指令自动指定在主文件后解析的文件名。该文件就像调用了irequire()函数一样。这个指令能被包含在php.ini配置文件中(因此,应用到所有文件,并且保存在服务器上),或者更具体的说,在网站服务器根目录的.htaccess文件中,如下:
php_value include_path ".:/usr/local/lib/php"
php_value auto_append_file "/home/www/utm_GA.html"
用这种方法,文件utm_GA.html,包含GATC的文件,将被自动添加到PHP网站所有页面的标签的前面。请注意,定义utm_GA.html位置使用了完整路径。使用这种方法,没有其他设置的话所有的子目录也将受到GATC。如果你希望避免这种情况,请设置相对路径。
注:因为auto_append_file仅适用于PHP文件,所有你不需要排除非PHP文件比如robots.txt。
如果其他的文件类型需要GATC,你需要手动添加。你也没必要担心其他include的PHP文件收到两个页面标签。例如,如果你在页面中使用来构建你的导航栏,这些页面不会被标记。
如果你是一个Wordpress用户,有一些可用的插件能帮你在页面中自动插入GATC。见:
http://wordpress.org/extend/plugins/search.php?q=google+analytics。
本书评论