問題現象
GoogleAnalysticで[行動] > [サイト内検索]のサイト内検索の結果が取得できない。常に0となる。
補足
下記のようなGoogleアナリティクスのサイト内検索設定は有効にしています。
参考: Googleアナリティクスでサイト内検索設定をして、ユーザーのニーズを把握しよう
原因と解決法
GoogleAnalysticのpageviewイベントでURLの?
以降を送付していなかったため。
page属性にlocation.pathname
を指定していました。また、page属性とlocation属性を両方共指定しています。結果から見るにpage、locationは、先に出現した属性を使用しているようです。そのため、page属性のみが使用ました。page属性のlocation.pathname
は、URLの?
以降がないため、問題現象が発生しました。
そのため、page属性を削除し、location属性にlocation.href
を指定することでURLの?
以降のアドレスをGoogleAnalyticsに送付することで問題が解決します。
変更後、サイト内検索の結果が無事出力されるようになりました。
※設定の変更により収集対象が、location.pathname
からlocation.href
に変更された結果、GoogleAnalytics上でのサイトアクセスの収集結果全体が変化しました。
修正前
当ブログでは、GoogleAnalyticsを以下の設定としていました。
ga('send', 'pageview', {
'page': location.pathname,
'title': document.title,
'location': location.href});
修正後
ga('send', 'pageview', {
'title': document.title,
'location': location.href});
備考
title, location
を送らない(標準)としたほうがより良い。
ga('send', 'pageview');
いろいろと恥ずかしいですねこれは…。