WordPressのQuick AdSenseプラグインのバージョンアップに伴い、これまで<!--more-->タグ以下に表示していた広告が正常に表示されなくなってしまいました。
そこで、function.phpにコードを追記する方法で対策を行いました。
以下はその対策内容です。
なお、この 対策方法は寝ログさんの この記事を 大変参考にしました。
functions.phpに挿入するコード
以下のコードをコピーしてfunctions.phpに張り付けて保存してください。
寝ログさんのページに記載されているものとの違いは、<!--NoAds-->タグによる広告の非表示に対応している点です。
////本文中の<!--more-->タグをアドセンスに置換 function replace_more_tag($the_content){ //広告(AdSense)タグを記入 $ad = <<< EOF <div>ここに広告コードを張り付ける</div> EOF; if (!strstr($the_content, '<!--NoAds-->')) { $the_content = preg_replace( '/(<p>)?<span id="more-([0-9]+?)"><\/span>(.*?)(<\/p>)?/i', "$ad$0", $the_content ); } return $the_content; } add_filter('the_content', 'replace_more_tag');
他の方法
Master Post Advertプラグインを使う
Master Post Advertプラグインでも<!--more-->以下に広告を表示させることができます。
Master Post Advertプラグインの使用方法はこのページやこのページなんかが詳しいです。
ただ、Master Post Advertプラグインは更新が2年前で止まっており、広告の<!--NoAds-->タグによる広告の非表示に対応していなかったので採用しませんでした。
終りに
というわけで、Quick AdSenseプラグインを使わずに<!--more-->以下に広告を表示する方法でした。