WordPressでアフィリエイト広告をカテゴリー別に自動で表示する方法をご紹介します。

みなさん、こんにちはニキです。

ブログやネットビジネスをやっている方はアフィリエイトを利用している人は多いのではないでしょうか?

アフィリエイトにはGoogle AdSenseやA8.netなど多くの種類がありますが、このアフィリエイト広告をあるカテゴリーにのみ掲載したいなんてことはありませんか?

アフィリエイトには掲載が禁止されている記事の分野などが定められている場合も多く、一つ一つコードを記事内に打ち込んでいるととても手間が掛かります。

今回はWordPressのカテゴリー別にアフィリエイト広告を自動で掲載する方法をご紹介します。

アフィリエイト規約にはご注意を
アフィリエイトには掲載が禁止されている記事などが内容によって細かく定められていることがあります(AdSenseなども厳しい規定があります)。
しっかりと記事の内容を定めないと違反となる場合があるので注意が必要です。

WordPressでアフィリエイト広告をカテゴリー別に自動で表示する方法をご紹介します。

それでは早速、WordPressでアフィリエイト広告をカテゴリー別に自動で表示する方法をご紹介します。

まずはざっくりとカテゴリー別に自動でアフィリエイト広告を作成する機能を実現するための方法を書いていきます。

カテゴリー別に自動でアフィリエイト広告を作成するための流れ

カテゴリー別に自動でアフィリエイト広告を作成するための流れを以下に書きます。

まずは、function.php内にてカテゴリーIDを取得し、該当カテゴリーであればアフィリエイトのコードを返却する関数を作成します。

次に、作成した関数をすべての個別記事に配置するために、プラグインを使用して自動で配置します。

最後に、個別記事内にて表示されていればカテゴリー別に自動でアフィリエイト広告を掲載できるようになります。

function.phpに関数を作成

それでは早速function.phpに関数を作成していきます。

WordPressのfunction.phpファイルに以下のコードを追加します。funtion.phpのパスは”ホストドメイン/public_html/wp-content/themes/各テーマの名前/”となっています。

基本的には以下のコードをコピーして貼り付ければ完了ですが、function.phpは間違って消したりするとWordPressの画面が表示されなくなるので必ずバックアップは取るようにします。

//カテゴリ毎にアフィリエイト広告を掲載する
function is_AffDisplay(){

  // カテゴリを取得
  $category = get_the_category();
   //すべてのカテゴリを取得&判定
   foreach($category as $key){
        if ($key->cat_ID == 'カテゴリ番号を入力') {
        return 'ここに広告URLを入力';
        }
    }
  return;
}

add_shortcode('AffDisplay', 'is_AffDisplay');
関数の説明

簡単に関数の説明をします。get_the_category()で現在のページのカテゴリIDを取得します。一つのページに複数カテゴリが設定されている場合もあるので、配列が返値としてきます。

次に返却されたカテゴリのカテゴリIDを配列の順番に見ています。その際に、該当するカテゴリIDが存在すれば、広告URLを呼び出し元に返します。

該当するカテゴリIDが慣れければNULLを返します。

WordPressのコードレファレンス
WordPressにて使用できる標準関数は更新サイトにレファレンスとして載っているので、応用した機能を作りたい場合に利用します。
WordPressのコードレファレンス
カテゴリIDは管理ページで確認

カテゴリIDはWordPress管理ページの”投稿>カテゴリー”で確認できます。

IDを確認したいタイトル部分にマウスオーバーすると、ブラウザの下部にID=””と吹き出しがポップアップするので、””部分がカテゴリーIDとなります。

PHPは個別記事ではそのまま使えない

本来であればPHP構文はHTMLファイルに埋め込むことができますが、WordPressの個別記事に埋め込みたい時には、個別記事で使うことができるショートカットを作成する必要があります。

構文は以下で、第一引数にショートカットの名前を、第二引数に関数名を代入します。

add_shortcode('AffDisplay', 'is_AffDisplay');

これにより、記事内にて[関数名]と入力するだけで、function.php内の関数を呼び出すことができます。

[’関数名を入力する’]

※[]内に関数名を入力する、上記の場合では’AffDisplay’を挿入する・

プラグインを利用して関数を自動配置する

最後にプラグインを使用して、先ほど作成したショートカット(関数呼び出し)を該当ページに自動で埋め込んでいきます。

QuickAdsense

私が使用しているお勧めのプラグインはQuickAdsenseです。名前にAdsenseが付いていますが、Adsense専用という訳ではなく、任意の場所にコードを張り付けることができるプラグインです。

説明は英語ですが、設定は簡単な上に、配置場所を指定できたりと機能が豊富なのでとても便利です。一応このプラグインでなくても、個別記事等に一括してコードを張り付けられるプラグインならば何でも大丈夫です。

QuickAdsenseとWordPressのプラグイン検索で打ち込めばダウンロードができます。

中身の設定を行う

QuickAdsenseの設定は非常に簡単で、ざっくりと以下のような機能があります。

どの位置に広告を掲載したいのか、どのページに掲載したいのかを決定します。Appearance部分で投稿にレ点を打てば、すべての投稿ページの指定位置にコードが挿入されます。

コードを挿入する

表示させたいページや位置を選択したらコードを以下の欄に入力していきます。

先ほどのショートカットを張り付ければ完了です。最大10個のコードが張り付けられるので、Adsenseや他のアフィリエイトと分離して管理することができます。

これで該当カテゴリの記事にアクセスした時にだけ、アフィリエイトの広告が出現するようになっているはずです。

すこし応用

こんな事言うまでもないかもしれませんが、カテゴリ判別のif文を複数条件にすれば、カテゴリ毎に様々なアフィリエイト広告を見せることができます。

アフィリエイト広告だけでなく、様々な用途で使用できそうですね。

その他にも条件式を変えることで、より複雑な動作を行うことができます。

   foreach($category as $key){
        if ($key->cat_ID == 'カテゴリ番号を入力') {
        return 'ここに広告URLを入力';
     if ($key->cat_ID == '別のカテゴリ番号を入力') {
     return 'ここに広告URLを入力';

まとめ

いかがだったでしょうか?アフィリエイト広告は期限切れになったり、有効でなくなった時の対処が手間ですが、今回の方法を使用すれば取り消しや導入を一括して行うことができます。

ご質問等ありましたら、ご連絡ください。

関連コンテンツ
Nickey

Nickey

愛知県出身で、現在はベトナムのフエに在住。デンソーやNTTデータベトナムを経て、ベトナム法人 HD Global Consulting Co.,Ltd, を設立。 ベトナムから東南アジアを中心とした世界の面白いや少し役に立つ情報を発信しています。ベトナム人の妻を持つパパであり、日々ベトナム語と格闘中。

コメントを残す

メールアドレスが公開されることはありません。