Blog のテンプレートに組み込んでおくと、エントリーの内容を形態素解析して、内容にマッチした商品を表示してくれる Drk7jp さんの Amazon Search 。
非常に便利なサービスです。
最近、回線を変えられたのかレスポンスが非常に速くなりましたし、いくつか出した要望も反映していただいて、とても便利に使わせていただいています。
もうすぐ、お引越のため、12/9~12日22日(予定)までの間、サービスを一時縮退されるそうです。
詳しくは↓のエントリー参照。
Drk7.jp のサービス一時縮退の事前告知 :: Drk7jp
いろいろお世話になっているのに、最近、音沙汰なしですみませんm(__)m
さて、今日の本題です。しばらく前に、Amazon Search 導入支援ツール のソースを見ていて、ふとヒラメキました。
現状は、Amazon Search はパラメータに対象ページの URL を指定する必要があるので、自動的にエントリーの URL を指定できる機能のある Blog 以外のページには対応していません。(設置する際に、手作業で指定すればできるのですが)
それも Blog のサービスによって仕様が異なるので、ユーザーにどのサービスを利用しているか選んでもらう必要があります。
そこで、JavaScript と組み合わせて URL を自動生成するようにすれば楽なのでは?と思って、簡単な Hack を試みました。
追記:よーく見てみると、LivedoorBlog 用のタグはすでにこの方法で記述されてるんですね。
まさに車輪の再発明だったかも(^^;
よく調べてからやるべきだと反省。
導入支援ツールで生成したURL
URL を JavaScript で自動的に指定する
JavaScript で Amazon Search を呼び出す JavaScript を生成し、その際にブラウザが持っているページの URL 情報を URL エンコードして渡しています。
最初、ちょっと難しいかもしれないと思ってましたが、意外と簡単にできました。
TOP ページ末尾の Amazon Search はこの方法で表示させています。
文字コードに注意ですね。Blog は UTF-8、TOPページは Shift_JIS だったので、そのまま、はっつけると文字化けしたので変更してあります。
よく考えたら、 Google Adsense も、どのページでも表示できるので、できないはずはなかったですね(^^;
→Google Adsense はインラインフレームを用いて、呼び出してるので若干違う。
IE4以降、Opera、FireFox、Safari など主要なブラウザで表示できています。
実は、1ヶ月ほど前から、ウチの Blog の Amazon Search は全部この方法で表示させていたのですが、いろいろドタバタしてるうちにすっかり忘れてました(^^;
この方法だと、Blog だけでなく、一般のページでも簡単に Amazon Search を設置できるので、より利用者が広がるかもしれませんね。
コメントする