RakutenBooksSearch プラグイン
昨年(2019年)Amazonアソシエイト・プログラムのPA-API(Product Advertising API)の利用規約が変更され、PA-APIのリンクを介した売り上げが発生しないサイトではPA-APIが使えなくなりました。AmazonSearch プラグインではPA-APIを叩いているのですが、うちみたいな売り上げなんか全くない弱小ウェブサイトではすぐに使えなくなってしまいました。
それから一年以上ほっといたわけですが、このところやることもなくてヒマなので、PA-APIに代わり、楽天ブックス総合検索APIを用いた商品検索の結果を表示するFreeStyleWikiのプラグインを作成してみました。
インストール
- 楽天ウェブサービスの新規アプリ登録のページから、新規アプリを登録し、applicationId、affiliateIdを取得します。
- 以下のファイルをダウンロードします。
- rakutensearch.zip(299)
- RakutenBooksSearch.pmの86行目にapplicationIdを、87行目にaffiliateIdをそれぞれ設定します。
- plugin以下にインストールします。
- なお、楽天ブックス総合検索APIはHTTPSであるため、LWP::UserAgentがアクセスするためにはLWP::Protocol::httpsが必要となることに注意が必要。幸いこのサイトがホストされているさくらインターネットのマシンにはあらかじめこのモジュールがインストールされていたため、新たにインストールするなどの対応は必要なかった。
使い方
{{rakutenbookssearch 東野圭吾,b,10,m}}
- 「東野圭吾」は検索語で必須のパラメータ。
- 「b」は商品のジャンルで以下の種類がある。省略時はa。
パラメータ | ジャンル |
---|---|
a | すべて |
b | Book |
c | CD |
d | DVD |
s | Software |
f | Foreign Book |
g | Game |
m | Magazine |
- 「10」は結果の数で省略可能。省略時は1。最大値は30。
- 「m」は書影のサイズで、s、m、lから選べる。省略時はs。
透明な螺旋 | |
文藝春秋 | |
東野 圭吾 | |
楽天 Amazon | |
架空犯 | |
幻冬舎 | |
東野 圭吾 | |
楽天 Amazon | |
ブラック・ショーマンと名もなき町の殺人 | |
光文社 | |
東野圭吾 | |
楽天 Amazon | |
クスノキの番人 | |
実業之日本社 | |
東野 圭吾 | |
楽天 Amazon | |
クスノキの女神 | |
実業之日本社 | |
東野 圭吾 | |
楽天 Amazon | |
十字屋敷のピエロ 新装版 | |
講談社 | |
東野 圭吾 | |
楽天 Amazon | |
白鳥とコウモリ(上) | |
幻冬舎 | |
東野 圭吾 | |
楽天 Amazon | |
白鳥とコウモリ(下) | |
幻冬舎 | |
東野 圭吾 | |
楽天 Amazon | |
ブラック・ショーマンと覚醒する女たち | |
光文社 | |
東野圭吾 | |
楽天 Amazon | |
仮面山荘殺人事件 新装版 | |
講談社 | |
東野 圭吾 | |
楽天 Amazon |
補足
- 楽天だけでなく、ついでにAmazonへのリンクもつけてみたが、
13桁のISBNやJANコードから無理矢理検索した結果のページへのリンクになっている。JANコードは無理矢理検索した結果のページだが、13桁のISBNは10桁に変換してすっきりしたURLへのリンクにした。これで許してください。 - プラグインの出力全体を <div class="rakutensearch">〜</div> でくるんであります。テーブルを組んで表示していますので、枠線がうるさく感じる場合にはCSSで非表示にしてください。
div.rakutensearch table, div.rakutensearch th, div.rakutensearch td, div.rakutensearch img { border-style:none; }
- 当初は、楽天商品検索APIを使って、楽天市場の商品を検索するプラグインも作ろうと思ってたのですが、楽天ブックスだけで十分な感じがしてやめてしまいました。気が向いたら作るかもしれません。
- PA-APIが使えない本サイトでは、AmazonSearch プラグインを書き換えて、内部でRakutenBooksSearch プラグインを呼ぶようにしてみました。これで既存のページに記載されているAmazonSearch プラグインの部分でもそれっぽい表示がなされるようになるはず。
関連ページ