Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
46
Help us understand the problem. What is going on with this article?
@shimoju

Google AnalyticsをRails 4のTurbolinksに対応させる

More than 5 years have passed since last update.
  1. <head>要素内にトラッキングコードを置く(<body>に置いたスクリプトは毎回実行されるので二重に送信されてしまう)
  2. 以下のスクリプトを追加、もしくはgoogle-analytics-turbolinks gemを使う
google-analytics-turbolinks.js.coffee
$(document).on 'page:load page:restore', ->
  # Universal Analyticsの場合
  if window.ga?
    ga('set', 'location', location.href.split('#')[0])
    ga('send', 'pageview')

  # 標準のアナリティクスの場合
  if window._gaq?
    _gaq.push(['_trackPageview'])
  • Turbolinksでページを読み込んだとき(とキャッシュから復元されたとき)page:changeイベントが発火するので、ここでPV送信メソッドを実行
  • page:changeは通常の遷移時にも発火してしまうため、page:load page:restoreでTurbolinksでの遷移と履歴復元時にPV送信メソッドを実行する
  • Universal Analyticsではなぜか正しいパスが取得できず元のURLのまま送信されてしまうため、ga('set', 'location')を使ってlocationを指定することで対処した

参考にしたページ

46
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
pepabo
「いるだけで成長できる環境」を標榜し、エンジニアが楽しく開発できるWebサービス企業を目指しています。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
46
Help us understand the problem. What is going on with this article?