【问题标题】:How should I handle tracking fragment page views in Google Analytics?我应该如何处理 Google Analytics 中的跟踪片段页面浏览量?
【发布时间】:2013-06-14 12:13:36
【问题描述】:

我一直在搜索Google Analytics documentation,但我仍然不明白我应该如何跟踪使用 ajax 来显示不同视图的单个“页面”站点的页面视图。我使用shebang URLs and _escaped_fragment_ 来帮助搜索引擎了解网站布局,但我们的分析人员告诉我在跟踪时去掉网址中的#! 部分,所以当您访问mysite.com/#!/fish/bonker 时,我们会运行:

_gaq.push(["_trackPageview", "/fish/bonker"]);

但这对我来说似乎是错误的。难道我们不希望我们跟踪的 URL 与 Google 实际抓取的内容保持一致吗?追踪_gaq.push(["_trackPageview", "#!/fish/bonker"]);有什么问题吗?

【问题讨论】:

    标签: javascript ajax google-analytics


    【解决方案1】:

    请务必认识到,Google Analytics(分析)和 Google 搜索之间有一堵墙。没有理由因为您的网址与另一个网址不一致而受到惩罚。

    escaped_fragment 纯粹是一个半标准的爬虫寻求爬取 AJAX 内容。

    默认情况下,当您不传递自定义浏览量值时,Google Analytics 会执行相同的操作:

    _gaq.push(["_trackPageview", location.pathname+location.search]);
    

    如果您想让它也跟踪 anchor 值,您可以简单地自己传递它:

    _gaq.push(["_trackPageview", location.pathname+location.search+location.hash]);
    

    这里的好处是 URL 将与“真实” URL 相对应。

    长话短说:执行您提出的方法非常好;我更喜欢后者(明确传递实际的location.hash,而不是它的破解版本),但两者都有效。

    【讨论】:

    • 谢谢,这很有帮助。我实际上确实使用了location.hash,浏览器理解window.onhashchange,但对于其他人,我实际上是在单击锚点时触发事件,所以在这种情况下,它实际上是href 属性的值(为了一致性而标准化)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多