在Google Analytics(Universal Analytics)中,我们是通过ga函数来发送页面的Pageview数据。利用该函数,我们可以为页面的各种行为添加Pageview数据。当然,我们的目标是为了让页面的Pageview数据更为精准,统计更符合我们的需求。

虚拟页面的应用场景

  • Flash网站、异步架构网站。这个时候当打开网站的子页面的时候,实际上是没有刷新整个页面的代码(没有发送新的Pageview数据),因此,我们需要在实现页面打开行为的时候加入发送Pageview数据的代码,间接实现;
  • 无法统计到Pageview,却需要将其作为Pageview统计页面。例如,我们接入了新浪微博账户登录的时候,无法统计到登陆页面(隶属于新浪微博)的Pageview数据,我们可以在通往该页面的按钮上加入虚拟网页代码,虚拟出该页面的Pageview数据。

虚拟页面的原理

虚拟页面是通过ga函数,在页面触发特定事件的时候,执行统计代码,向GA服务器发送Pageview数据,实现Pageview统计。在标准代码的情况下,是如下一条ga统计代码:

ga('send', 'pageview');

在此情况下,Google Analytics(Universal Analytics)的analytics.js会自动获取页面的标题( title )与页面的路径( location ):

//默认获取的页面标题
var title = document.title;

//默认获取的页面路径
var location = window.location.protocol + '//' +
               window.location.hostname +
               window.location.pathname +
               window.location.search;

虚拟页面最佳实践

//page参数用于填写虚拟的页面路径
//title参数用于填写虚拟的页面标题

ga('send', 'pageview', {
    'page': '/page-path?id=1',
    'title': 'my page title'
});

在以下时候我们可以加入上面的ga的Pageview函数实现统计:

  • Flash网站、异步架构网站打开子页面的时候;
  • 站内文档下载、Loading页面时候;
  • 站外友情链接、广告点击的时候;
  • 其他需要计入Pageview的页面行为……

例如,在异步架构网站,打开子页面的链接上:

//加入虚拟页面前
<a title="Page Title" href="#PagePath">My Page</a>

//加入虚拟页面后
<a title="Page Title" onclick="ga('send', 'pageview', {
    'page': '/Page1',
    'title': 'Page Title'
});" href="#PagePath">My Page</a>

可以看到上面代码,我们在链接的onclick 事件上加入GA虚拟网页代码,当我们点击链接(触发事件)的时候,就虚拟构造了一个页面路径为 /Page1 ,页面标题为 Page Title 的Pageview数据。这样就实现了虚拟网页的目的了!

参考资料:

2 对 “Google Analytics部署 虚拟页面”的想法;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据