2

我在 Google Analytics(分析)将深度链接作为单独页面拾取时遇到了一些问题。

该站点使用 JQuery 来处理选项卡和深度链接。以这个页面为例: http ://www.albanyservices.com/compliance/#/ic_compliance/

'#' 之后的 URL 部分指的是页面中的特定选项卡。这会在选择新选项卡时更新。

目前,谷歌分析并未将每个标签视为网站中的单独页面。由于它们都包含单独的内容并直接链接到整个网站,我需要找到一种方法让谷歌分析将每个“#”更改视为一个单独的页面。

任何帮助将不胜感激。提前致谢。

4

1 回答 1

6

首先,您对“深度链接”的想法不是谷歌的。实际上,/compliance/ 是一个页面,其中所有选项卡的内容都已加载,而 # 只是一个内联锚,它显示一些相应的内容并隐藏其余内容。这不是新的综合浏览量,而是页面上发生的事件。在大多数情况下,将每个 jQuery 选项卡作为一个新页面来跟踪是不正确的,但我可以在这里看到您想要这样做的原因。

您要做的是在每次切换选项卡时调用 _trackPageview() 函数。您可以通过将其放在选项卡的“更改”回调中来做到这一点(在您现在处理 $.address.title 的位置之后,该页面源代码的第 143 行)。

这里唯一的问题是在页面加载时也会调​​用更改。因此,当页面加载时,您将拥有初始 trackPageview (我们认为这不是您想要的),然后是选项卡的第二个。

所以我的建议是,在“标签”是比物理页面更有意义的页面结构的页面上,您删除此行:

_gaq.push(['_trackPageview']);

相反,在选项卡上的 .change 回调内部,调用:

var _gaq = _gaq || [];
 _gaq.push(['_trackPageview', document.location.pathname + document.location.hash]);

现在还有一个问题。它将跟踪页面浏览量,例如/compliance/#/additional_risk_management/

同样,Google 并不真正认为 # 表示新页面,因此如果由于某种原因该代码不起作用,您必须解决从您跟踪的任何页面中删除 # 的问题,如下所示:

var _gaq = _gaq || [];
gaq.push(['_trackPageview', document.location.pathname +     document.location.hash.replace("#/","")])
于 2010-08-23T19:45:43.983 回答