Yahoo!検索Webサービスを使った割とありがちなサイト内検索
ありがちですが、このブログのサイト内検索をYahoo!検索(Yahoo!デベロッパーネットワーク - 検索Webサービス)とAjaxを使うようにしてみました。
- AjaxClient.js (適当Ajaxライブラリ)
- YSearch.js (AjaxClient.jsを使用するYSearchクライアントライブラリ)
- ysearch-json.cgi (Yahoo!検索Webサービスを叩いて結果をJSONで返すCGI)
- ysearch-json.fcgi (そのFastCGI版)
- ysearch.html (サンプルHTML・普通に検索)
- ysearch-inc.html (サンプルHTML・インクリメンタルに検索)
また、ysearch-json.cgi、ysearch-json.fcgiは単体で使用すると(queryオプションを与えないと)フォームを表示するので動作確認などに使用できます。
注意点
- YSearch.jsの58行目の'uri'の値は、ysearch-json.{cgi,fcgi}のURLを指定する必要があります。
- ysearch-json.{cgi,fcgi}の10行目の$YJWS_APPIDにセットするアプリケーションIDはYahoo!デベロッパーネットワーク - アプリケーションIDの登録から適宜取得してください。
- ysearch.html, ysearch-inc.html中、「YSearch.init('[Your Hostname]',10);」の引数はそれぞれ「自分のサーバーのホスト名」「一度に表示する検索結果の個数」です。適宜変更してください。
- ysearch-inc.htmlは相当手抜きです。ちゃんと動くようにするためにはインターバルタイマーを真っ当に使う必要があります。ま、簡単なのでいろいろ試してみてください。
Comments and Trackbacks