谷歌分析(不带标签管理器),发送带有散列URL和AJAX的页面视图,SPA类型的网络应用程序



我们有一个web应用程序(AJAX/SPA类型(,我没有构建它,但需要在上面跟踪分析。URL不是很好或符号化,大多数情况下都是通过AJAX运行的。我真的无法控制生成的内容。我想做的是在onClick上调用一个函数,这样我就可以跟踪";页面视图";阿贾克斯的呼叫页面。

地址栏中生成的URL格式如下:https://subdomain.mysite.com/subpage/myfoopage.html#details=ecatalogue.54321https://subdomain.mysite.com/subpage/mybarpage.html#details=ecatalogue.12345

考虑到URL中有一个散列和一个句点,我不知道这将如何在Analytics中显示,在我发送";发送";在我的分析仪表板上,我想我会寻求一些建议。提前谢谢。

我目前想使用的代码是ga set和ga send。但考虑到散列,我想知道我是应该使用window.location.href来发送全部内容,还是在将其发送到Analytics之前必须修改URL。

因此,目前,为了简单起见,只需使用jQuery:

$(".somelink").on('click', function(){
//let the hash load
setTimeout(function(){
var myPath = window.location.href;  //https://subdomain.mysite.com/subpage/myfoopage.html#details=ecatalogue.54321
ga('set', 'page', myPath);
ga('send', 'pageview');
},2000);
});

完整的路径会与哈希和句点一起发送吗,还是会添加一个特殊的"+"字符之类的,或者我需要进行一些字符串解析来去除位置路径中的哈希和句点吗??

提前谢谢。

如果您不想发送哈希及其后的任何内容,您可能应该使用split方法或类似的方法将其从路径字符串中删除。

测试它的最佳方式是配置一个";开发";属性并将数据发送给它。验证后,您可以将属性id更改为生产id。

散列将通过。使用您的示例:

https://subdomain.mysite.com/subpage/myfoopage.html#details=ecatalogue.54321

在GA中,它会这样显示:

/https://subdomain.mysite.com/subpage/myfoopage.html#details=ecatalogue.54321

前面有额外的/,因为你只需要发送页面路径。

所以我建议你从中解析出主机名和协议

最新更新