Wordpressの単独記事の中に広告などを入れる場合方法はいくつかある。
今回はプラグインを使わずに記事の中に広告を入れる方法をご紹介。
「H2」の手前に広告などを入れる
条件
記事中にhタグを使用していること。
カスタマイズするphp
カスタマイズするのは「function.php」になる。
Wordpressの管理画面から「function.php」をカスタマイズするとトラブルになりやすいので、サーバーにアクセスして該当ドメインの「function.php」を編集するほうが無難。
カスタマイズ方法
1.利用しているサーバーの該当ドメインの「function.php」を開く。
2.<?phpの下に以下の記述を追加。
function add_ads_before_1st_h2($the_content) {
if (is_single()) {
//広告(AdSense)タグを記入
$ads = <<< EOF
ここに広告タグを挿入する
EOF;
$h2 = '/<h2.*?>/i';//H2見出しのパターン
if ( preg_match( $h2, $the_content, $h2s )) {//H2見出しが本文中にあるかどうか
$the_content = preg_replace($h2, $ads.$h2s[0], $the_content, 1);//最初のH2を置換
}
}
return $the_content;
}
add_filter('the_content','add_ads_before_1st_h2');
*h2をh3に変えればh3の上に広告が表示される。
ちなみに「Principle(プリンスプル)」ではうまく行ったがほかのWordpressテーマでうまく行くかどうかは不明。
PCとモバイルで表示を変える場合
本当はPCとモバイルで表示を変えたいところだ。
PCとモバイルで表示を変えるコードを紹介してくれているサイトがあったのでご紹介しておく。
が、Principle(プリンスプル)」ではうまく行かなかったんだけど。
1.利用しているサーバーの該当ドメインの「function.php」を開く。
2.<?phpの下に以下の記述を追加。
function add_ads_before_1st_h2($the_content) {
if (is_single()) {
if (wp_is_mobile()) {
$ads = <<< EOF
★レクタングル中のコードを記述
EOF;
} else {
$ads = <<< EOF
★レクタングル大のコードを記述
EOF;
}
$h2 = '/<h2.*?>/i';//H2見出しのパターン
if ( preg_match( $h2, $the_content, $h2s )) {//H2見出しが本文中にあるかどうか
$the_content = preg_replace($h2, $ads.$h2s[0], $the_content, 1);//最初のH2を置換
}
}
return $the_content;
}
add_filter('the_content','add_ads_before_1st_h2');
ちなみに「Principle(プリンスプル)」ではうまく行かなかった。
画面が真っ白けになってしまった。
がほかのWordpressテーマでうまく行くのかも。
どうしてもデバイスで表示を分けたい場合はソースもとのサイト様へお問い合わせを。
*コードを掲載されているサイト様「love-guava」
コメント