<< Yahoo検索パラメーター | main | PHP4がPHP5になる!? >>

2007.08.01 Wednesday

検索ワード連動型関連記事表示

検索ワード連動型関連記事表示機能を付けてみました。

もともと、RecoBotもどきを作ったときに、検索ワードを取り込むノウハウは習得済みだったので、あとは、Yahoo検索APIにそのワードを渡して、返ってきた結果を表示するだけなので、どうということはありません。

--

--

ウェブ検索Webサービス
を見てみると、
検索ワードは、UTF-8でエンコードしてqueryパラメータにセット
するだけでよいのですが、
ちゃんと、検索ドメイン指定も出来るようになっているので、
site=kommy.s254.xrea.com
としておくことで、このドメインだけの検索結果を関連記事として表示することが出来る、という目論見です。

ソースは、
    $req = 'http://api.search.yahoo.co.jp/WebSearchService/V1/webSearch';
    $req .= '?appid=' . 'アプリケーションID';
    $req .= '&query=' . urlencode(クエリーの入った変数);
    $req .= '&site=' . 検索ドメイン;
    $xml = simplexml_load_file($req);
    if( 0 < count($xml->Result) ){
      $text = '<p style="text-align:left;">';
      $text .= $query_str_space . 'での検索ですね<br>';
      $text .= '■関連記事<br><ul style="text-align:left;">';
      foreach($xml->Result as $r){
        $text .= '<li><a title="' . $r->Summary . '" href="' . $r->Url . '">' . $r->Title . '</a></li>';
      }
      $text .= '</ul>';
      $text .= 'マウスオーバーで概要確認、クリックでその記事へジャンプできます';
      $text .= '</p>';
      print $text;
    }
こんな感じで、簡単に実現できました。

ただ、IE6だとブログのサイドバーが落ちちゃうんだよなあ・・・
って、どっかで同じようなことを書いたような気がするが、ま、いっか。
OperaとFirefoxやIE7インストール済み環境のLunascape(Lite)だと、ちゃんと表示されるんですけどね。
いずれは、すたれていくバグ(&独自拡張)だらけのブラウザなので、相手にしない方が賢明かな。とはいえ、ユーザー数が最も多いブラウザでもあるので、そこが問題なのだが。

あ、また脱線してしまった。

--

テクノラティお気に入りに追加する

Comments

コメント入力は停止しています

海外からと思われるコメントスパムが横行しているため、全記事のコメント入力を停止しています。メッセージのある方は、ホームページの一番下に連絡欄がありますので、そちらからお願いします。

Trackback URL

トラックバックする場合は、
トラックバック元の記事にこのエントリへのリンクを記載してください
このエントリのタイトル「検索ワード連動型関連記事表示」
このエントリのリンク「http://kommy.s254.xrea.com/blog/log/eid49.html」