このブログの検索を「Google Custom Search」にしてみた


Seesaaブログにもともと備え付けられているブログ内検索パーツは、Yahoo!のエンジンを内部的に使っていて、(Yahoo!にジャンプするのではなく)ブログサイト内に検索結果が表示される。しかし、精度が悪く遅いので気に入らなかった。
昨年、日本語対応された「Google Custom Search(以下Google CSE)」にしようと思っていてやれていなかったのだが、idea*ideaでも作業ログが紹介されていたので、乗り移ることにした。

■Google Custom Search Engine – Site search and more
■「Google Custom Search Engine」、全世界向けに拡大:ニュース – CNET Japan
■『Google Custom Search Engine』で百式ブログシリーズを横断検索できるウィジェットを作ってみた | IDEA*IDEA

Google精度で素早く検索してくれるので、超オススメ。作業のほとんどはidea*ideaのやり方通りだが、二つだけ本質思考道場ならではの工夫をしてみた。

1.検索結果ページのバナー
検索結果の左上バナーをオリジナルにして、バナー画像から元のブログサイトに戻れるようにした。

cse1
ちなみに、2つの画像(この場合は顔写真とGoogleロゴ)を合成するのは、Paint.NETというフリーソフトを使っている。フリーなのにレイヤーが使えて便利。こういうのはAdobe PhotoShopの得意技だけど、私にはこのフリーソフトで十分。
■Paint.NET – Free Software for Digital Photo Editing
画像の中で強調したい部分にスポットライトがあたっているように見せるのも簡単に加工できる。やり方は下を見てください。
■スポットライトが当たったような画像をPaint.NETで作る : PamGau
画像内容はどうでもよいが、元のブログサイトに戻りやすくしておくのは親切ですよね(自画自賛ww)。

2.検索フィルタを外す
検索してみると、結果がいまいち。例えば「ゴルゴ」で検索するとこんな感じ。

image
ゴルゴにまつわるエントリーは3つあるのだが、上位に出てこない。検索結果ページをめくっていくと、最後にこうなっている。
image
これを最初から「検索結果をすべて表示する」には、getパラメータに「filter=0」を追加すればよい。よって、Google CSEのページでコピーしたHTMLコードにhiddenパラメータを加えて完成。formタグ一式はこんな感じ。

<form action="http://www.google.com/cse" id="cse-search-box">
  <div>
    <input type="hidden" name="cx" value="003052090568057941289:nihsugwxb6o" />
    <input type="hidden" name="filter" value="0" />
    <input type="text" name="q" size="25" />
    <input type="submit" name="sa" value="検索" />
  </div>
</form>

赤字の部分が追加した行。検索結果がイマイチ納得できない方はお試しください。私は思った通りに結果が出ました。
image
一昔前なら、NamazuとかのCGIものをサーバ側に組み込んで、いちいち全文検索させて、なんてことをやっていましたが、便利な世の中になりました。
ブログは「ブロガーの個性を最大限アウトプットしているサイト」だと思うので、自分の脳みそを素早く検索するためにも、ブログにはより良い検索エンジンを積んでおきたいですね。