目次の上に広告をのせたいな
調べていると、記事下よりも本文の中、目次の上の広告がよくみられているのだとか。
しかしながら、私の愛用しているTCD MAGのテーマには、見出しの前に広告を配置する機能はついてないのです。本文中にショートコードでどこでも貼りつける機能はあるけれど、できれば毎回、最初のH2の前に自動で広告を出すようにしておきたい。
いったいどうしたらいいんだろう?
*ちなみに目次をつけるには、目次生成プラグイン「Table of Contents Plus」を使っています。
H2の上に広告を。functions.phpを編集する
調べてみると、「テーマの編集」から「functions.php」ファイルにコードを追記すればいいことがわかりました。
コードは先人の皆様が掲載してくださっています。さっそくあるサイトからコピーして貼付けを…
ところが更新ボタンをおすと、サイトが真っ白になってしまいました。
functions.phpの編集には注意が必要
・・・なんということ。どうやらうまくいかなかった模様です。
しょうがない、元にもどして別のコードを試してみよう。
ところがWordpressの編集画面でいくら追記したコードを消しても、元に戻りませんでした。
ログインや管理画面も見れなくなった
functions.phpは実はとってもデリケート。コードを教えてくれたサイトさんにも、間違った操作でサイトが表示されなくなる可能性があること、改変前にバックアップをしておくこととの記載がありました。
しかしこんなになってしまうとは。サイトが真っ白になるどころか、ログイン画面もおかしくなり、管理画面もみれなくなってしまいました。
バックアップはとってあるけれど、ちょっと面倒だな…
functions.phpの編集エラー、変更箇所を消してすぐに解決
ところがバックアップを使わずに、すぐに解決できました。
こちらの記事のおかげです。
Xサーバーのファイルマネージャーにログインして、
「public_html」→「wp-content」→編集したテンプレートを選択→「functions.php」
ボックスにチェックをいれて右側の「編集」をクリックすると、さきほどやってしまったfunctions.phpの編集を修正することができました。
サイトも元に戻って一安心!ありがとうございます。
TCD MAGで最初のH2タグの前に広告を表示する方法
さて、ここからが本番です。
先ほどのコードがダメだったということは、今使っているテーマにぴったりなコードをいれてやらねばなりません。つまり私の場合は、MAGで使えるコード。MAGで最初のH2タグの前に広告を表示してくれるコードです。
探してみたらこちらにありました。
TCDテーマで記事内の1つ目の見出しタグの直前に広告を表示したい
いつもありがとうTCDLABO。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
function add_ads_before_1st_h2($the_content) { if (is_single()) { $ads = <<< EOF //ここに広告のコードを入力 EOF; $h2 = '/<h2.*?>/i'; if ( preg_match( $h2, $the_content, $h2s )) { $the_content = preg_replace($h2, $ads.$h2s[0], $the_content, 1); } } return $the_content; } add_filter('the_content','add_ads_before_1st_h2'); |
「//ここに広告のコードを入力」の部分を消して、Google Adsenceなどから取得した広告のコードを貼りつけます。
それを、「外観」→「テーマ編集」から、「functions.php」に貼付け。
うまくいきました。私は1番下に貼りつけましたよ。
*ちなみにこのサイトではないです。こちらのサイトはまだAdsenceの準備ができていないので…
目次の上に広告を表示できた
これからどのくらい変わってくるか楽しみです。変化が現れたらまた報告できたらと思います。