Ransackの検索結果をGoogle Analyticsで可視化する
Google Analytics の「サイト内検索」の機能で、Ransack の検索をトラッキングする方法似関してのメモです。
結論
- 管理 > ビューの設定 > 「サイト内検索のトラッキング」を ON にする
- クエリパラメータには
q[title_cont]
のようにデコードした結果を設定する
経緯
Google Analytics の「サイト内検索」をオンにすれば、サイト内でどういったキーワードで検索されたかを追うことができます。
検索結果の URL が ?q=hoge
のような場合には、クエリパラメータの設定では q
とだけ設定しておくだけで設定は完了です。
しかし、Ransack を使った場合の検索では URL の末尾は ?utf8=%E2%9C%93&q%5Bfirst_name_or_last_name_cont%5D=Tanaka
のようにエンコードされたものになります。
デモアプリ: RansackDemo
この場合に、クエリパラメータにどういった設定をすれば良いのかがわからず、情報もあまりなかったので記事にしました。
クエリパラメータの設定手順
結論に書いた通り、クエリパラメータには q[title_cont]
のように設定しておけばサイト内検索をトラッキングできます。
行動 > サイトコンテンツ > 全てのページタブを見ると、Ransack の検索結果ページはデコードされた URL が表示されていると思います。
なのでこれに合わせてデコードされたパラメータの値を設定に追加すれば、Ransack の結果を拾えるようになります。
クエリパラメータは最大 5 つまで設定できるので、検索の種類が多くても 5 つまでなら対応できます。
サイト内検索の結果は、行動 > サイト内検索 > 概要のタブで確認できます。