3

ページ上のボタンとURLのハッシュタグ(#)を使用して、コンテンツ(リンク)の順序を操作するサイトがあります。彼らは私のサイトにリンクしていて、最終的に私のサイトを見つけてクリックする前に、人々がどのボタンをクリックしているかを知りたいのです。

たとえば、リファラーのURLは次のようになります-http ://www.example.com/page1? content=1234#button1

ハッシュタグ(#)の後に値を抽出して、ユーザーが自分のサイトを見つけるためにどのように並べ替えているかを知る方法はありますか?document.referrer.location.hashtagを使用することを考えましたが、うまくいかないと思います...

最終的にこのデータをGoogleAnalyticsにインポートしたいと思います(おそらくカスタム変数を使用してインポートできます)が、GAでそれを行う方法に関する他のヒントをいただければ幸いです。

私はこれでどんな助けにも感謝します!

4

2 に答える 2

2

URLのハッシュ部分がサーバーに送信されることはなく、document.referrerのjavascriptオブジェクトに保存されていないようです。

URLのハッシュ部分にアクセスする唯一の方法は、ブラウザがそのページにあるときにページ内からアクセスすることです。

翻訳:参照ページを制御し、リンク内のハッシュフラグメントを渡さない限り、それを取得する方法はありません。

詳細:http ://www.razzed.com/2009/02/12/uh-oh-ajax-powered-search-kills-keywords-in-referrers/

于 2012-06-15T16:12:52.663 に答える
1
<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>

役立つ情報源:

于 2012-10-09T18:49:34.587 に答える