Movable TypeでAmazon Webサービスを利用する
Movable Type でAmazonのWebサービスの利用方法をメモっておく。「Movable Typeだから」特殊な設定が必要というわけではないが、Movable Typeの機能を利用すると、「こんなことができるよ」という内容である。
Amazon Webサービスとは
Amazon Webサービスとは、Amazonがソフトウェア開発者向けに、Amazonの商品データにアクセスできるようにしたサービスである。詳しくは、以下のAmazonのサイトを参考にしてほしい。
Amazon Webサービス
なお、無料で利用できるが、あらかじめ登録が必要である。上記のサイトにアクセスすれば登録できる。
また、ここでは、Amazon Webサービスの利用方法の詳細は、省くので、上記のAmazonのドキュメントを参照するか、下記サイトを参考にしてください。Amazonのドキュメントは英語なので、下記のサイトをとりあえず見て、足りない部分をAmazonのドキュメントを参考にすれば良いと思います。基本的には以下の日本語のサイトで十分だと思う。
私がやりたいこと
とりあえず、私が実現したかったことは、ブログ記事毎に関連する書籍の一覧を表示し、自分好みのスタイルで表示することであった。
- ブログ記事毎に関連する書籍の一覧を表示する
- 自分好みのスタイルで表示する
このうち、前者の「ブログ記事毎に関連する書籍の一覧を表示する」を実現するために、Movable Typeの機能を利用する。後者については、Amazon WebサービスではXSLファイルを指定して表示内容をカスタマイズできる。ここでは、前者について述べる。
Movable Typeでの実現方法
Movable Type 4.1を前提として述べる。
Amazon Webサービスでは、キーワードを指定して、キーワードにマッチする書籍の一覧を取得することができる。Movable Type でやることは、「キーワード」を指定することである。
方法としては、既存のMTタグ(例、キーワード、タグ、概要)の利用が考えられるが、すでにいろいろな用途で使用しており、Amazon Webサービスの検索キーワードとして利用するには問題があった。そこで、Movable Type 4.1からデフォルトで利用できるようになったカスタムフィールドを利用する。カスタムフィールドでは、独自にフィールドを定義できる。そこで、「Amazon検索キーワード」というフィールドを定義した。
次に、テンプレートの中のAmazon Webサービスを利用している部分に先程のカスタムフィールドの値が読み込まれるように設定する。
(設定例)
http://webservices.amazon.co.jp/onca/xml?
Service=AWSECommerceService
&Version=[バージョン]
&AWSAccessKeyId=[アクセスキーID]
&AssociateTag=[アソシエイトID]
&Operation=ItemSearch
&Keywords=<$MTentrydataamazonkeyword encode_url="1"$>
&SearchIndex=Books
&ResponseGroup=Small,Reviews,OfferFull,Images
あとは、ブログ記事を書く際に、先程設定したカスタムフィールドの値を指定すれば良い。
あとがき
Movable Typeのカスタムフィールドを利用する方法はすぐ思いついたのだが、一番大変だったのは、XSLファイルの作成。XSLに関する知識はほとんどなかったので、基本的なところから勉強した。ちょっとしたことが、どうすればいいのかわからず苦戦した。。
トラックバック(0)
このブログ記事に対するトラックバックURL: http://itsmemo.com/mt/mt-tb.cgi/117
※スパム防止のため、管理人がトラックバック内容確認後、公開されます。


コメントする