MovableType 管理画面のログには、訪問者が MovableType のサイト内検索に入力した検索キーワードが記録されます。このログを見ることで、どのような検索キーワードでサイト内検索が利用されているのか大体の感覚を見ることはできますが、より細かな集計を行うには全く物足りません。データベースからログを抽出して集計するようなプログラムを書くことも考えられますが、もっと簡単にできないでしょうか?
既にサイトに Google Analytics が導入されているのであれば、MovableType のサイト内検索の利用状況を、Google Analytics を利用して集計することができます。Google Analytics を利用することで、検索キーワードごとの検索回数や、どのページからどのような検索キーワードで検索が行われたのか、検索結果ページの滞在時間など、より詳細なデータを Google Analytics のグラフィカル インターフェース上で確認することができるようになります。
通常のブログ記事ページやウェブページに、Google Analytics の解析コードを埋め込むのと同様に、検索結果の出力テンプレートについても解析コードを埋め込みます。サイト内検索用に新たに解析コードを取得する必要は全くありませんし、むしろ、そのサイトで利用している解析コードをそのまま利用します。そうでなければ意味がありません。
Google Analytics は、URL に含まれるクエリ文字列からサイト内検索の利用状況を集計しています。一方、同じサイト内検索でも、URL にクエリ文字列が含まれない場合には、Google Analytics では利用状況を集計できません。MovableType では、検索フォームを生成しているテンプレートが以下のように記述されている場合、method
に指定されている値を、post
から get
に変更します。
<form method="post" action="<$mt:CGIPath$><$mt:SearchScript$>"> ↓ <form method="get" action="<$mt:CGIPath$><$mt:SearchScript$>">
検索を GET リクエストで行う方法が最も簡単ですが、URL がゴチャゴチャしてしまうのが嫌だ!という方は、POST リクエストでも集計する方法があります ⇒ 参考リンク
Google Analytics の管理画面から、サイト内検索の設定を行います。[アカウント管理]-[(目的のサイト)] と進み、[プロファイル]-[プロファイル設定] タブを選択します。"サイト内検索レポートを有効にする" を選択し、"クエリ パラメータ" には search
を指定して完了です(Fig.1 )。
Fig.1 Google Analytics のプロファイル設定
設定が完了したら試しに何か検索してみます。Google Analytics の集計結果に表示されるまで 1 日程度かかるので、翌日くらいになってから検索キーワードの集計に表示されていることを確認してみましょう。