検索ワードを保存する

アクセス解析を設置していれば、どのような検索ワードでサイトに辿り着いたか簡単にわかりますね。
検索ワードを眺めているだけで思わぬ需要を発見したりして、コンテンツの改良やサイトの方向性を修正するのに大いに役立ちます。
しかし、アクセス解析を使って分析できるのは「検索エンジン→自サイト」の過程で使われる検索語だけです。つまり既にページ内で使用している単語の組み合わせや「狙ったキーワード」に関する情報だけで、潜在的な需要に関しては表面に現れてきません。
ユーザーがサイトに何を期待しているか、そのサイト内に欲しい情報があるかはサイト内検索に投げ込まれた検索語を見てみないとわかりません。


では、どうやって「サイト内検索で使われたキーワードを収集するか」ですが、PHPで簡単なプログラムを組んでみました。
search.php

<?php
$URL="http://www.google.co.jp/search?hl=ja&q=";
$MySite="affblog.aki-f.com";
$MySite="site:{$MySite}+";
$StrKey=$_GET["key"];
$StrKey=htmlspecialchars($StrKey);
$line=$StrKey."¥n";
$fp=fopen("keywd.txt","a");
flock($fp, LOCK_EX);
fputs($fp,$line);
fclose($fp);
$StrKey=urlencode(mb_convert_encoding($StrKey,"UTF-8","auto"));
header("Location: ".$URL.$MySite.$StrKey);
?>

用意するファイルは上記のsearch.phpとキーワードを保存する空ファイルkeywd.txtです。
2つのファイルを同じディレクトリにアップロードしてkeywd.txtのパーミッションを「606」に設定します。
上記ではGoogleのsiteコマンドを利用してサイト内検索をしています。$MySiteには検索対象のサイトのURLを代入します。
さらに下記の検索窓をHTMLに追加したら出来上がりです。
※検索窓とsearch.phpが違うディレクトリにある場合はaction=””の中身を適正に書き換えます。
検索窓

<form action="search.php" method="get">
<input type="text" name="key" size="50">
<input type="submit" value="検索">
</form>

GETで送信されたキーワードをkeywd.txtに追加書き込みしてから本来の検索プログラムに再送信する単純な仕組みです。独自にサイト内検索のプログラムがあるならそちらにリダイレクトしたほうがいいですね。
たとえばこのブログの場合、サイト内検索のURLはhttp://affblog.aki-f.com/?search=”なので

<?php
$URL="http://affblog.aki-f.com/?search=";
$StrKey=$_GET["key"];
$StrKey=htmlspecialchars($StrKey);
$line=$StrKey."¥n";
$fp=fopen("keywd.txt","a");
flock($fp, LOCK_EX);
fputs($fp,$line);
fclose($fp);
$StrKey=urlencode(mb_convert_encoding($StrKey,"EUC-JP","auto"));
header("Location: ".$URL.$StrKey);
?>

こんな感じです。こっちのほうが簡単ですねw
キーワードはkeywd.txtにどんどん追加されていくので、ダウンロードしてエクセルで分析するなりなんなり自由に使えます。
「えっ、こんなこと期待されても・・・」というようなキーワードがあったりして愕然としたりしますよ(笑)アクセス解析ではわからない意外な需要を発見できます。
ただ、このままではkeywd.txtが際限なく大きなファイルになるので実際に利用する場合は適当に削除するか一定の行数以上にならないように工夫する必要があります。

One thought on “検索ワードを保存する

  1. a-ki blog

    ブログの検索窓

    ブログのレイアウトを変更しサイドバーの整理をしていてふと思ったことですが、どう…

Comments are closed.