参考:http://bakery.cakephp.org/articles/ratty/2012/05/18/amazon_product_advertising_services_component
参考:https://github.com/SteveFound/CakePHP_AmazonPAS
Cakephp2.x用のAmazonPasプラグインを使ってみました。
このプラグインはAmzonAPI用のリクエストURLを生成してリクエストを行い、結果を配列で返してくれます。
以前のAmzonAPIはリクエストURLが簡単だったのですが、今は色々と面倒なので重宝するプラグインです。
■使い方
1.Githubからダウンロードして、PluginディレクトリにAmazonディレクトリとして展開します。
2.展開したファイルの中から「aws.php」をConfigディレクトリにコピーしてから、aws.php内のアクセスキー、シークレットキー、アフィリエイトタグを設定します。
3.bootstrap.phpでプラグインの読み込みの設定
// プラグインが1つだけの場合 CakePlugin::load('Amazon.Pas'); // 全部読み込む場合 //CakePlugin::loadAll();
4.コントローラの設定
public $components = array('Amazon.Pas');
5.Amazonへのリクエスト
このプラグインはリクエストURLを生成して返り値を返してくれるだけなので、Amazonへのリクエストパラメータは基本的に自分で必要なパラメータを入れる必要があります。
ItemLookup
$this->Pas->setLocale('jp'); $parameters = array( 'ItemId' => 'ASINを入れる', 'ResponseGroup' => 'Medium' ); $results = $this->Pas->itemLookup($parameters);
ItemSearch
$this->Pas->setLocale('jp'); $parameters = array( 'Keywords' => '検索キーワードを入れる', 'SearchIndex' => 'SearchIndexを入れる', 'ResponseGroup' => 'Medium' ); $results = $this->Pas->itemSearch($parameters);
リクエストに必要なパラメータはAmazonのマニュアルを参照して下さい。
プラグインの中を見るとわかりますが、キャッシュ等はしていませんので、運用方法によってはキャッシュを入れた方がいいかと思います。
日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)