【PA-API v5に対応】「Associates Link Builder」から「WP Associate Post R2」へ移行する手順
WordPress2020年7月22日
すっかり放置してしまっていたのですが、「Associates Link Builder」が2020年2月13日に提供終了しかつ2020年3月10日にPA-API v4が無効となっていたことから、当サイトではAmazonへの商品リンクモジュールが表示されなくなっておりました。この度はご不便をおかけし申し訳ありません。
そこで今回、全ての商品リンクを「WP Associate Post R2」に置き換えましたので、本記事では手順についてご紹介させていただきたいと思います。
導入手順
- APIの認証キーを新たに発行
- プラグイン「WP Associate Post R2」をインストール
- 「Associates Link Builder」の設定を行う
- プラグインのテンプレートを編集
- 投稿画面からショートコードでリンクを設置
- リンクが正しく動作していることを確認
①APIの認証キーを新たに発行
どうやらv4のアクセスキー、シークレットキーをそのまま移行することはできないようでした。なので改めて認証キーを発行する必要があります。以下にログイン・アクセスし「認証情報を追加する」をクリックします。
するとアクセスキーとシークレットキーが発行されますのでこれをメモ帳などに控えておきます。
②プラグイン「WP Associate Post R2」をインストール
今回、「Associates Link Builder」に代わるプラグインとして「WP Associate Post R2」を使用します。FTPもしくはWordPressの管理画面よりインストールし有効化します。
③「WP Associate Post R2」の設定を行う
管理画面のサイドバーより[設定]-[WPアソシエイトポストR2]に移動し、設定を行います。
Amazonアソシエイトのリンクを有効にする | チェックを入れる |
---|---|
アクセスキーID | 先ほど控えたv5のアクセスキーを入力 |
シークレットアクセスキー | 先ほど控えたv5のシークレットキーを入力 |
トラッキングID | Amazonアソシエイトの管理画面で確認した「*****-22」を入力 |
今回、Amazonのみの設定となりますので楽天やYahooについては割愛します。上記入力ができましたら「変更を保存」をクリックして保存します。
④プラグインのテンプレートを編集
先ほどの管理画面では「スタンダード」が選択されており、規定のマークアップに対して規定のcssが当たる設定となっていますが、当サイトではオリジナルテーマを使用しているためスタイリングでひと手間加えてあげる必要があります。
プラグインの以下ファイルを編集します。
/wp-content/plugins/wp-associate-post-r2/templates/single-detail.php
当サイトのcss設計にあわせ、以下の様に編集します。
<?php if ( ! defined( 'WPAP_ENABLED' ) ) { exit; } ?>
<div class="az-item wpap-tpl-<?php echo $item['Service']; ?><?php if ( '' !== $item['Class'] ) { echo ' ' . $item['Class']; } ?>">
<a href="<?php echo $item['URL']; ?>" target="_blank" data-click-tracking="<?php echo $item['ServiceName'] . ' ' . $item['ID'] . ' ' . $item['Title']; ?>">
<p class="img"><img width="250" height="250" src="<?php echo $item['Image']; ?>"></p>
<div class="info">
<p><?php echo $item['Title']; ?></p>
<ul>
<?php if ( isset( $item['Author'] ) ) : ?>
<li>メーカー:<?php echo implode( self::GLUE_STRING, $item['Author'] ); ?></li>
<?php endif; ?>
<?php if ( isset( $item['Artist'] ) ) : ?>
<li>販売者:<?php echo implode( self::GLUE_STRING, $item['Artist'] ); ?></li>
<?php endif; ?>
<?php if ( isset( $item['Price'] ) ) : ?>
<li>価格:<span class="price"><?php echo $item['Price']; ?></span></li>
<?php endif; ?>
<?php if ( isset( $item['Release'] ) ) : ?>
<li><?php printf( __( 'Release date: %s', 'wp-associate-post-r2' ), $item['Release'] ); ?></li>
<?php endif; ?>
<li>提供元:<?php echo $item['ServiceName']; ?></li>
</ul>
</div>
</a>
</div>
当サイトではクラス「az-item」以下各所にスタイルが当たるよう設計していますが、サイトに合わせてマークアップとcssはよきように変更ください。
⑤投稿画面からショートコードでリンクを設置
これでやっと準備が整いました。Associates Link Builderのショートコードを設定していた記事の編集画面にて、全てWP Associate Post R2のショートコードに全て置き換えます。
- ※これが半端なく面倒だったが致し方ない
- ※記事検索で「[amazon_link」とかで検索するとヒットするので、これがなくなるまで置き換え作業を行います
以下のように置き換えます。
変更前
[amazon_link asins='商品コード' template='XXX' store='XXX-22' link_id='XXX']
変更後
wpap service="amazon" type="detail" id="商品コード"
- ※記事にソース表示されなくなってしまうのでコード先頭の「[」とコード末尾の「]」を上記では省略しています
⑥リンクが正しく動作していることを確認
うまくいっていれば、以下の様に商品リンクが表示されるようになっています。
まとめ
WordPressのプラグインでサイトの重要機能を実装していると、否応なしに代替プラグインへの変更を強いられるケースが発生するのはしょうがないですね。Associates Link BuilderはAmazonの公式プラグインだったので安心して使用していたのですが。まあ今回は無事に置き換えることができたのでよしとしましょう。
ほぼAssociates Link Builderと同じ感覚で使えるWP Associate Post R2はおすすめなので、どうぞ本記事をご参考にしていただければ幸いです。
- 【WordPress】WordPressを4.9.5から4.9.6へアップグレードしました
- 【WordPress】5.5以降でimgタグに自動付与される属性「loading=”lazy”」を出力しない方法
この記事を読んでいる方にオススメの記事
- ※承認制のため、即時には反映されません。
この記事にコメントする