Google AdSenseを利用しています。
最近は自動広告をすごい押してきますが、手動で好きな場所(ウィジェットエリア)に貼っている人も多いと思います。
で、基本はアドセンスで良いんだけど、このページは別の広告を貼りたい…ってこと無いですか?
Cocoonの機能やWidget Logicというプラグインを使えば、条件分岐でウィジェットの表示・非表示をコントロールできますが、ピンポイントでこのページにはこの広告を貼りたい!という場合だとちょっと不便なんですよね。
投稿の編集画面上に広告コードを貼る欄があって、この記事はアドセンスよりアフィリエイト広告の方がいいな~って時は、記事を書くついでにコードを貼ればOKにできればラクだなぁと。
それで試行錯誤した結果、以下のような形に落ち着きました。
- PR.phpを作ってFTPにアップロード
- funtions.phpにコードを追記しPR.phpを呼び出すショートコードを作る
- 広告を貼りたい場所にショートコード[PR]を書く
- アドセンス以外の広告を貼りたい記事のカスタムフィールド(フィールド名:pr)に広告コードを貼り付ける
備忘録を残しておきます。
PR.phpを作ってFTPにアップロード
FTP(/自サイトのフォルダ/wp-content/themes/cocoon-child-master/)にアップロード
ファイル名・拡張子:PR.php
<?php if(get_post_meta($post->ID, 'pr',true)): // 入力がある場合、任意の広告を表示 ?>
<?php echo get_post_meta($post->ID, 'pr', true);?>
<?php else: // 入力がない場合、アドセンスを表示 ?>
// ここにアドセンスのディスプレイ広告コードを貼り付け
<?php endif; ?>
こちらの記事を参考にさせていただきました。
ちなみに、アドセンスの広告でなくてももちろんOK。デフォルトで表示したい広告コードを貼っておいてください。
funtions.phpにコードを追加
子テーマのfunctons.phpに以下を追加
//ショートコード・PRを作成
function PR_original() {
ob_start();
get_template_part('PR');
return ob_get_clean();
}
add_shortcode('PR', 'PR_original');
★functons.phpの取り扱いにはご注意を!事前にバックアップをお取りくださいm(_ _)m
広告を貼りたい場所にショートコードを書く
広告を貼りたい場所にショートコード[PR]を書きます。
ウィジェットでサイドバーや投稿本文中(H2手前)などに。
カスタムフィールドにprフィールドを新規追加して広告コードを貼り付け
カスタムフィールドはデフォルトでは非表示なので、設定で表示します。
設定 → 一般 → 高度な設定で、カスタムフィールドをオンにして画面をリロードします。
投稿編集画面を下の方までスクロールすると、カスタムフィールド欄があります。
ボタンを押してから、
- 名前に「pr」
- 値に任意の広告コードを貼り付け
- ボタンをクリック
これでこのページの広告枠には、アドセンスの代わりに自分で貼り付けた広告が表示されるようになります。
カスタムフィールドをたくさん使う場合は入力が大変なので、プラグイン導入をご検討ください。
ご参考まで。