你如何从引荐来源网址获取位置.hashtag - 谷歌分析

How do you get location.hashtag from the referrer url - Google Analytics

本文关键字:hashtag 位置 获取 谷歌      更新时间:2023-09-26

有一个网站在其URL中使用页面按钮和主题标签(#)来操纵其内容(链接)的排序方式。 他们链接到我的网站,我想知道人们在最终找到我的网站并点击之前点击了哪些按钮。

例如,引荐来源网址如下所示 - http://www.example.com/page1?content=1234#button1

有没有办法提取主题标签 (#) 后面的值,以便我可以知道人们如何排序以找到我的网站? 我想过使用document.referrer.location.hashtag,但我认为这行不通...

我最终想将这些数据导入Google Analytics(我可能可以使用自定义变量做到这一点),但是有关如何在GA中执行此操作的任何其他提示都值得赞赏。

我感谢对此的任何帮助!

URL的哈希部分永远不会发送到服务器,并且看起来它没有存储在document.referrer的javascript对象中。

访问 URL 的哈希部分的唯一方法是当浏览器位于该页面上时从页面内访问它。

翻译:除非您控制引用页面并在链接中传递哈希片段,否则无法获得它。

更多信息: http://www.razzed.com/2009/02/12/uh-oh-ajax-powered-search-kills-keywords-in-referrers/

<script type="text/javascript">
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXX-X']);
  /*
   * Function: Hash Custom Variable
   *   Pass everything after # in document.referrer to GA custom variable
   */
  (function() { 
    // Parse out the hash part of the referrer
    var referrerHash = document.referrer.split("#")[1];
    // If the hash exists, pass it back to GA
    if(typeof referrerHash !== "undefined") {
      _gaq.push(['_setCustomVar', 1, 'Sort', referrerHash, 3]);
    }
  })(); // IIFE to not leak global vars
  // Have to _trackPageview after custom variable is pushed    
  _gaq.push(['_trackPageview']);
  (function() {
    var ga = document.createElement('script');
    ga.type = 'text/javascript';
    ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(ga, s);
  })();
</script>

有用的来源:

  • 谷歌的异步跟踪开发人员文档
  • 谷歌的自定义变量开发者文档
  • 立即调用的函数表达式 (IIFE) by Ben Alman