MovableType で手軽に Amazon アフィリエイト 速報版

Posted by
ぴろり
Posted at
2005/08/31 22:40
Trackbacks
関連記事 (0)
Comments
コメント (2)
Post Comment
コメントできます
Category
プラグイン カテゴリ
 MovableType で Amazon Web Service を使えるようにするためのプラグインを書いて見ました。すでに同様の機能を持つ MTAmazonや、 aws.plがありますが、 プラグインの習作ということで公開しますm(_ _)m  機能的には他と比べて劣る部分の方が多いです(汗)  その一方、PHP を使用することで、 記事の再構築を必要とせずに商品の最新情報が取得できる点がウリかなと思っています。
このエントリーをはてなブックマークに追加  

はじめに

 Amazon Web Service の取得処理などのほとんどを PHP で行っているため、サーバで PHP が動作する必要があります。 また、Key Values Plugin と連係して動作することを前提に設計されていますので、こちらも一緒にどうぞ。

ダウンロード

MTAmazonWebService  new

ver.0.01, '05/08/31 0, MovableType plugin
  • MT 3.151-ja で動作確認

追加されるテンプレートタグ

MTUseAmazonWebService
ページの頭あたりに置いてください。AWS 処理を行う PHP コードを生成します。
MTAwsAsinSearch
ASIN コードによる商品検索を行う場合に使用するコンテナタグです。
asin
検索する商品の ASIN コードです。パラメータを [ と ] で括ると、MTタグとして解釈します。
MTAwsKeywordSearch
キーワードによる商品検索を行う場合に使用するコンテナタグです。
catalog
検索するカタログを指定します。 指定できる値は AWS のドキュメント を参照してください。パラメータを [ と ] で括ると、MTタグとして解釈します。
keyword
検索ワードを指定します。パラメータを [ と ] で括ると、MTタグとして解釈します。
lastn
取得する検索結果の数。パラメータを [ と ] で括ると、MTタグとして解釈します。
MTAwsCustomerReviews
カスタマーレビューを参照するためのコンテナタグ。
lastn
参照するレビューの数を指定します。パラメータを [ と ] で括ると、MTタグとして解釈します。
MTAwsUrl
商品の個別ページへの URL を返します。アフィリエイト ID を含みます。
MTAwsAsin
商品の ASIN コードを返します。
MTAwsProductName
商品名を返します。
MTAwsCatalog
商品のジャンル文字列を返します。
MTAwsCatalogIconUrl
商品のジャンルを表すアイコンの URL を返します。
MTAwsReleaseDate
商品のリリース日を返します。
MTAwsManufacturer
商品の製造者を返します。
MTAwsImageUrlSmall
商品画像(小)の URL を返します。
MTAwsImageUrlMedium
商品画像(中)の URL を返します。
MTAwsImageUrlLarge
商品画像(大)の URL を返します。
MTAwsListPrice
商品の定価を返します。
MTAwsOurPrice
商品の Amazon での販売価格を返します。
MTAwsSalesRank
Amazon での売上ランキング順位を返します。
MTAwsAvailability
商品の発送状態を返します。
MTAwsAvgCustomerRating
商品の平均レビュー点数を返します。
MTAwsAvgCustomerRatingImageUrl
商品の平均レビュー点数の画像を返します。
MTAwsTotalCustomerReviews
カスタマーレビューの総数を返します。
MTAwsCustomerReviewRating
一つのカスタマーレビューの評価点数を返します。MTAwsCustomerReviews コンテナタグの内部で使用できます。
MTAwsCustomerReviewRatingImageUrl
一つのカスタマーレビューの評価点数の画像を返します。MTAwsCustomerReviews コンテナタグの内部で使用できます。
MTAwsCustomerReviewSummary
一つのカスタマーレビューの概要を返します。MTAwsCustomerReviews コンテナタグの内部で使用できます。
MTAwsCustomerReviewComment
一つのカスタマーレビューの本文を返します。MTAwsCustomerReviews コンテナタグの内部で使用できます。

導入方法

Step 1. プラグインの設定

 アーカイブに含まれる MTAmazonWebService.pl (または MTAmazonWebService.php) を修正します。
MTAWS_AMAZON_ASSOCIATE_TOKEN
あなたの Amazon Associates ID に書き換えてください。 そのままにしておくと作者一人がオイシイ思いをしてしまいます(*´ω`)ウマー
MTAWS_RANDOM_DONATE_RATE
ランダム寄付の確率。 あなたのアソシエイトIDと作者のIDをある確率で入れ替えることで運がよければ作者にお小遣いが入る仕組みになっています。 「ビタ一文あげません」という場合は 0 にしてください(T_T)
MTAWS_OUTPUT_CHARSET
出力する文字コード。UTF-8, UTF-7, ASCII, EUC-JP,SJIS, JIS, ISO-2022-JP などが指定できます。 詳細は PHP マニュアルを参照してください。
MTAWS_CACHE_PATH
製品情報キャッシュの保存ディレクトリ。 Amazon から取得した製品情報を一定期間キャッシュすることでサーバ負荷を低減し、ページレスポンスを向上しています。 空欄を指定するとキャッシュ使用しませんが、ページを表示するたびに Amazon に問合せます。 nCacheExpireTime も参照してください。
MTAWS_CACHE_EXPIRE_TIME
製品情報キャッシュの寿命。 キャッシュが、ここで指定された期間より古い場合にのみ、Amazon への問合せを行います。

Step 2. プラグインのインストール

 アーカイブに含まれる MTAmazonWebService.pl を MovableType のプラグインディレクトリにコピーします。 そして、MovableType の管理画面のメインメニューで、"使用可能なプラグイン"欄に表示されていることを確認します。

Step 3. テンプレートの一例 - ASIN コードによる商品紹介

 下の例では、Key Values Pluginを 使って、記事の追記欄に "AwsAsinSearch1=123456789" のように紹介した商品の ASIN コードを埋め込む例です。 当サイトの記事ページ右のサイドバーはこの方法で実現しています。
<MTKeyValues iterate="1" pattern="m/AwsAsinSearchd*/i">

<MTKeyValuesHeader>
<h4><a href="http://www.amazon.co.jp/">Amazon.co.jp</a></h4>
</MTKeyValuesHeader>

<MTAwsAsinSearch asin="[MTKeyValue]">
<a href="<$MTAwsUrl$>"><$MTAwsProductName$></a><br />

<a href="<$MTAwsUrl$>"><img src="<$MTAwsImageUrlSmall$>"></a><br />

<img src="<$MTAwsCatalogIconUrl$>"><$MTAwsCatalog$><br />

定価<s><$MTAwsListPrice$></s><br />
価格<b><$MTAwsOurPrice$></b><br />

<img src="<$MTAwsAvgCustomerRatingImageUrl$>" title="5 つ星のうち <$MTAwsAvgCustomerRating$>"><br />

<MTAwsCustomerReviews lastn="1">
<$MTAwsCustomerReviewSummary$>
</MTAwsCustomerReviews>

</MTAwsAsinSearch>
</MTKeyValues>

 Key Values Plugin にはバグがあって、そのままでは使えません(^^;) 配布しているページのコメント欄に対策が載っていますので、パッチを当ててご利用ください。

Step 4. テンプレートの一例 - キーワードによる商品紹介

 テンプレートに下の例のように検索キーワードから商品紹介を行うようテンプレートを書いた上で、
<MTKeyValues><MTIfKeyExists key="AwsKeywordSearch">
<MTAwsKeywordSearch keyword="[MTKeyValue key='AwsKeywordSearch']" catalog="[MTKeyValue key='AwsKeywordSearchCatalog']" lastn="[MTKeyValue key='AwsKeywordSearchNum']">

<a href="<$MTAwsUrl$>"><$MTAwsProductName$></a><br />

<a href="<$MTAwsUrl$>"><img src="<$MTAwsImageUrlSmall$>"></a><br />

<img src="<$MTAwsCatalogIconUrl$>"> <$MTAwsCatalog$><br />

定価<s><$MTAwsListPrice$></s><br />
価格<b><$MTAwsOurPrice$></b><br />

<img src="<$MTAwsAvgCustomerRatingImageUrl$>" title="5 つ星のうち <$MTAwsAvgCustomerRating$>"><br />

</MTAwsKeywordSearch>
</MTIfKeyExists></MTKeyValues>
 追記欄に以下のようなキーと値を書くと、ページ毎に検索内容を変えることも可能です。
AwsKeywordSearch=MovableType
AwsKeywordSearchCatalog=photo-jp
AwsKeywordSearchNum=4

改造のヒント

 標準で MTAmazonWebService プラグインはページ毎に AWS の処理ルーチンを書き出すので、 ディスクスペースに優しくありません。 アーカイブのaltに含まれるプラグインは、 AWS の処理ルーチンを外部ファイル(MTAmazonWebService.php)に独立したものです。

トラブルシュート - 動かない時は?

この項目は作成中です。

いろいろ

  • オリジナルの著作権表示を改変しない限り、自由に改造・転載・配布できます

楽屋裏

 自前サイトで使う分に必要な機能のみ実装してあるので、他サイト様で汎用的に使えるかは判りませんm(_ _;)m  また気が向いたら&改造の必要が出てきたらバージョンアップすると思います…
このエントリーをはてなブックマークに追加  



関連記事/トラックバック

関連記事/トラックバックはまだありません

この記事にトラックバックを送るには?

寄せられたコメント (全 2 件中、最新 5 件まで表示しています)

Posted by
ぴろりぴろり
at
2006/05/07 11:11
ID
UW0j5ZiE
KeyValues のループ値が更新されず、MTKeyValuesHeaderとMTKeyValuesFooterが機能しません。
http://www.bradchoate.com/weblog/2002/07/27/keyvalues#c001165
参考まで当サイトで使用している版↓
http://www.magicvox.net/cgi-bin/mt/extlib/bradchoate/keyvalues.pm
Posted by
litelite
at
2006/05/06 17:45
ID
BdzqElXE
はじめまして。
Key Values Pluginのバグ対処方法をぜひ教えていただきたいのですが、
もしよろしかったらぜひご教授お願いします<(_ _)>

コメントを投稿する

 
 (必須, 匿名可, 公開, トリップが使えます)
 (必須, 匿名可, 非公開, Gravatar に対応しています)
 (必須)
スパム コメント防止のため「投稿確認」欄に ランダムな数字 CAPTCHAについて を入力してから送信してください。お手数ですがご協力のほど宜しくお願いいたします。