用虚拟综合浏览量跟踪文件下载或表单的部分完成,夸大了综合浏览量,因为,这些很明显不是真正的页面浏览。因此,在你使用虚拟综合浏览量之前请考虑清楚。
如果,你所跟踪的行为类似于页面浏览,那么虚拟综合浏览量技术是有效的。在我看来,可读文件(PDF、DOC、XLS、PPT等等)的下载以及表单的部分完成就是这样。我的假设是这邪恶页面与跟踪那些让用户确认所看到的内容,而不是内容本身的页面的综合浏览量一样是有效的,比如付款确认凭证、表格提交谢谢你页面、订阅确认页等等。
另一种方法是使用本章稍后讨论的事件追踪。如果你把文件下载跟踪为事件,那么也应该考虑把付款确认凭证、表格提交谢谢你页面、订阅确认页等等跟踪为事件,以保持一致。
因此,我的建议是仅在所跟踪的动作与页面浏览一点关系没有时使用事件追踪。例子见本章稍后的“事件追踪部分”。

 

也能用虚拟综合浏览量来跟踪表格的部分完成。特别是你有一个特别长(十多个域)或多页的表格时,这非常有用,比如,一个注册表或者反馈调查表。用虚拟综合浏览量你能看到访问者在到达提交按钮前在哪里退出了。通过渠道可视化可以做到这一点,如第5章“报告解释”的“目标与渠道报告”部分所述。
为了达到这一目的,用下面onblur事件处理程序来修改你的HTML表单域:
旧的ga.js:
<form action="cgi-bin/formhandler.pl" method="post" name="theForm">
<input type="text" name="firstname" onBlur="if(document.theForm.firstname.value !='');
pageTracker._trackPageview('/forms/signup/firstname')">
<input type="text" name="lastname" onBlur="if(document.theForm.lastname.value !='');
pageTracker._trackPageview('/forms/signup/lastname')">
<input type="text" name="dob" onBlur="if(document.theForm.dob.value != '');
pageTracker._trackPageview('/forms/signup/dob')">
<input type="text" name="address1" onBlur="if(document.theForm.address1.value != '');
pageTracker._trackPageview('/forms/signup/address1')">
.
.
.
</form>

异步代码:
<form action="cgi-bin/formhandler.pl" method="post" name="theForm">
<input type="text" name="firstname" onBlur="if(document.theForm.firstname.value != '');
_gaq.push(['_trackPageview','/forms/signup/firstname'])">
<input type="text" name="lastname" onBlur="if(document.theForm.lastname.value != '');
_gaq.push(['_trackPageview','/forms/signup/lastname'])”>
<input type="text" name="dob" onBlur="if(document.theForm.dob.value != '');
_gaq.push(['_trackPageview','/forms/signup/dob'])">
<input type="text" name="address1" onBlur="if(document.theForm.address1.value != '');
_gaq.push(['_trackPageview','/forms/signup/address1'])">
.
.
.
</form>

包含If()!=”语句是为了在创建一个事件之前,确定每一表单域都有内容。当然,并不是每一个表单域都是必填的,请恰当的使用if语句。
警告:在这个例子中的虚拟综合浏览量跟踪的是确定一个域是否完成标签——并不是访问者提交的信息。跟踪个人可识别信息违反Google Analytics的服务条款。更多的信息请看:www.google.com/analytics/tos.html

 

默认情况下,Google Analytics将不会跟踪你的文件下载(例如PDF、EXE、DOC、XLS和ZIP),因为,这些页面并不能用GATC标记。但是,用上面提到的虚拟综合浏览量技术,修改页面上的下载链接可以轻松的这些。
下面是一个例子,修改的是你页面中的链接,而不是GATC。这是一个不能被跟踪的原始的HTML:
<a href="mydoc.pdf">下载PDF</a>
这是在虚拟的/download目录跟踪的新页面:
旧的ga.js:
<a href="mydoc.pdf"
onclick="pageTracker._trackPageview('/downloads/mydoc.pdf');">
下载PDF</a>

异步代码:
< a href="mydoc.pdf"
onclick="_gaq.push(['_trackPageview','/downloads/pdfs/corporateBrief.pdf']);">
下载PDF</a>

 

如果你有一个包含购物车或者有多于几十页内容的网站,那么你很有可能使用动态URL。在中情况下,这些页面是在运行过程中产生——即,访问者通过点击页面链接请求它们,而不是预先建立的静态HTML内容。这是一个内容管理系统(CMS)运行的原理。
动态URL通过用服务器端的脚本语言来工作,例如CGIPERL、PHP、ASP或Python,将非格式化的信息放入通用的设计模板之中。通常,URL的参数定义页面的内容。你能通过页面的名称判断你是否使用了动态URL。静态URL的页面文件名以.htm或.html结束。动态URL则以.cgi、.pl、.php、.asp或.py结束。这并不意味着,所有以.php结尾的页面名都是动态产生的。但是,如果你的网站URL还包括一个查询(?)符号后面带有参数,例如名/值对,那么它们极可能是动态URL,如下面的三个例子:
例子1——静态URL

http://www.cloga.info/catalogue/product101.html

例子2——带有一个参数的动态URL

http://www.cloga.info/catalogue/product.php?sku=123

例子3——带有三个参数的动态URL

http://www.cloga.info/catalogue/product.php?sku=148&lang=cn§=suede

在动态URL的例子中,查询参数sku、lang和sect定义了模板中的页面内容。
注:一些服务器可能使用?的替代品,比如#来定义动态URL的参数。
一个URL的结构如图7.1。

图7.1 URL的结构

上面URL被分解为它的组成部分:
•协议:http://
•主机名:www.cloga.info
•目录:/catalogue
•文件名:product.php
•查询参数:sku=123&lang=en§=leather
•URI:/product.php?sku=123&lang=en§=leather
在这种情况下,绝大多数查询条件对人类读者来说是完全没有意义的,它们的存在是为了与数据库交流。为了帮助报告用户,因此,最好有可读性良好的URL。Google Analytics能通过将查询条件重写为产品名或描述来达到这一目的,并且在你报告中将这些表现为虚拟的URL即虚拟的页面浏览(虚拟综合浏览量)。
默认的情况下,Google Analytics通过调用GATC中的JavaScript例程_trackPageview()跟踪你查看过的页面。如第6章所讨论的,标准的GATC调用的_trackPageview()没有参数(括号中没有值)。因为括号空着,Google Analytics直接从你的浏览器地址栏记录URI,并在报告中显示为页面浏览。你能通过修改_trackPageview()的调用,覆盖这一行为,来创建虚拟的页面浏览。例如,图7.1中的虚拟URL将是:
旧的ga.Js:
pageTracker._trackPageview(‘/catalogue/products/english/leather/blue tassel shoe’);
pageTracker._trackPageview(‘/catalogue/products/english/suede/high heeled boot’);
异步代码:
_gaq.push(['_trackPageview', '/catalogue/products/english/leather/blue tassel shoe ']);
_gaq.push(['_trackPageview', '/catalogue/products/english/suede/high heeled boot ']);
括号中包含虚拟页面浏览及路径。这覆盖了URI的值。通过使用虚拟页面浏览,报告变得更加容易阅读和理解。只要参数以前斜线(/)开头,虚拟页面浏览的名称可以被组织成任何你想要的虚拟路径样式结构。但是,这并不意味着,所有的查询条件都应该重写,只有那些对识别某些具体页面很重要的页面应该重写,因为,一些查询条件可能是报告其他信息,例如站内搜索所需要的。
你可以手动修改每一个页面的_trackPageview()的参数,或者你也能用目前web环境中的存在变量,比如,购物车或内容管理系统,来构建意义更丰富的虚拟URL。一个好站长或网站开发者能很快设置好。至少,最简单应用是图7.1的例子,你会得到下列结果:
旧版ga.js:
pageTracker._trackPageview (‘/catalogue/products/eng/leather/prod code 123’);
异步代码:
_gaq.push(['_trackPageview', '/catalogue/products/eng/leather/prod code 123']);
很显然,这不是完成品,但是它的可读性对报告用户来说要好很多。正如前面所说的,你仅应该使用这种技术重写那些必要的动态URL。另外,你应该与网站管理员讨论一下后果。例如,没必要也不应该重写下面的URL:

http://www.cloga.info/search?s=metrics

在这个例子中,URI是关于站内搜索查询的,你应该希望在网站搜索报告中看到。重写这个URL将损坏那些报告。更进一步说,如果你的URL报告多个变量,一些是你想重写的,而另一些是你不想重写的,那么你可以在虚拟页面浏览中包含这些变量。例如,假设下面的动态URL包含网站搜索查询关键词以及其他动态变量:

http://www.cloga.info/search?q=shoes&lang=en§=leather

作为一个虚拟URL,这可能被写成:
旧的ga.js:
pageTracker._trackPageview(‘/products/eng/leather/?q=shoes’);
异步代码:
_gaq.push(['_trackPageview','/products/eng/leather/?q=shoes']);
在这里,原始的查询q=shoes被写入了虚拟页面浏览中,你能正常查看网站搜索报告。与所有的URL一样,如果你想要在虚拟页面浏览中写入查询变量,那么使用标准惯例——以?开始变量定义,用&分离多个名/值对。
注:使用虚拟页面浏览的一个结果是,将破坏网站内点击量分布图及内容报告中访问此页的链接,因为,这一页实际上并不存在。如果这些功能对你很重要,那么不要重写你的URL。但是,你可能发现清晰的虚拟页面浏览(cloga:即虚拟综合浏览量,不喜欢用虚拟综合浏览量,感觉有点怪)远比这些功能更有价值。
避免夸大综合浏览量
_trackPageview()函数包含一个自检变量以避免它在没有定义参数(虚拟页面浏览)时执行两次。这防止了当一个页被错误的添加了两次GATC所造成的综合浏览量高估。但是,如果你使用虚拟页面浏览的话,_trackPageview()将在每次调用时执行——即使定义了相同的虚拟页面浏览。如果你想在多个Google Analytics账户中跟踪数据,那么使用第6章所描述的上卷报告法。

© 2012 Cloga与网站分析 Suffusion theme by Sayontan Sinha
//Google +1

无觅相关文章插件,快速提升流量