Amazon Webサービス:XSLファイルサンプル 2

Amazon Webサービスで指定するXSLファイルのサンプルである。キーワードに関連する売れ筋書籍を表示するサンプルである。

サンプル

XSLソースコード

aws_key2.xsl

Amazon Webサービスのバージョンは、2008-03-03を利用している。他のバージョンで利用できるかは未確認であるが、おそらく大丈夫なはず。

利用方法

このサンプルは、XSLを適用することで、Javascriptのコードを返すようにしている。そのため、表示したい場所に以下のコードを記述すれば良い。

<script type="text/javascript"
    src="http://webservices.amazon.co.jp/onca/xml?
       Service=AWSECommerceService&
       Version=2008-03-03&
       AWSAccessKeyId=[アクセスキーID]&
       AssociateTag==[アソシエイトID]&
       Operation=ItemSearch&
       Keywords=[キーワード]&
       SearchIndex=Books&
       ResponseGroup=Small,Reviews,OfferFull,Images&
       Sort=salesrank&
       Style=[XSLファイルのURL]&
   charset="utf-8">
</script>

キーワードがアルファベットだけの場合は特に問題ないが、日本語やスペースが混ざる場合にはUTF-8でURLエンコードする必要がある。URLエンコードでGoogle検索すれば、方法がいろいろと出てくる。例えば、以下のサイトでは、指定した文字列を指定した文字コードでURLエンコードしてくれる機能を提供している。

また、Movable Typeを利用する場合には、当サイトの以下のページを参考にするのも良いと思います。

表示サンプル:「XML」に関連する売れ筋書籍

ちょっと解説

上のサンプルは、以下のようにtableを用いて、表示している。スタイルシート(CSS)を利用して、デザインをカスタマイズ可能なようにしている。

<table border="0" cellpadding="5" class="aws_items">
<tr>
<td valign="top" class="aws_img">本の画像データ</td>
<td valign="top" class="aws_attr">
タイトル、著者、価格
<div class="aws_review">
レビュー内容
</div>
</td>
</tr>

(2冊目の紹介)

</table>

なお、上記のサンプルは、以下のようなスタイルシートを適用している。aws_reviewの部分だけスタイルシートを新たに記述し、他の要素については、このサイト(ItsMemo)全体のスタイルシートが適用されている。

div.aws_review{
  margin-top:5px;
  padding-top:5px;
  border-top:1px dotted #C0C0C0;
}

また、サンプルでは売れ筋書籍の上位2冊を表示しているが、変更したい場合には、12行目の"position() &lt;= 2"の部分の数字を表示したい冊数に変更すれば良い。

11: <xsl:template match="aws:ItemSearchResponse/
                              aws:Items/aws:Item">
12:  <xsl:if test="position() &lt;= 2">

補足

上記のXSLファイルのサンプルは自由に利用して頂いて構いません。ただし、自分のサイトにダウンロードしてから利用してください。

関連記事

トラックバック(0)

このブログ記事に対するトラックバックURL: http://itsmemo.com/mt/mt-tb.cgi/125

※スパム防止のため、管理人がトラックバック内容確認後、公開されます。

コメント(2)

gori :

XSLTのテンプレートお借りします。
サンプルを探していたのですがなかなか見つからず
こちらにたどり着きました。

自分で作成するには難しいと思っていたので
サンプルを掲載して頂いて本当に感謝です。

itsmemo :

>goriさん

ご報告ありがとうございます。
少しでもお役に立てて光栄です。
是非とも活用していただければと思います。

コメントする