WordPress

アドセンスの広告貼り方を手動&自動挿入&非表示ページも指定する方法まとめ

アドセンスの広告を「どこに貼ればいい?」は理解している人が多いですよね。

検索すれば色々なブログで解説されていますから「タイトル下」「h2タグ上」「記事中」「記事下」「サイドバー」などと広告を張る場所はいくつもあります。

順調にブログ運営をしていれば、1度広告タグを張り付けて終わり。かも知れませんが、Googleからポリシー違反を指摘されたり、ブログテーマを変更してデザインを変えたりすると、せっかく整えていた広告もズレていってしまいます。

ポリシー違反記事があったらアドセンス広告はどうしたらいい?は、以前に書いた記事を参考にしていただくのがベストです。

あわせて読みたい
アドセンスでポリシー違反が解除されない!iQOSやglo記事がタバコ分類になってるので注意! 前回の「アドセンスがポリシー違反になっちゃった話」ですが、まさかの続編です。 続くとは思ってませんでした。 というか...

ですが、アドセンス広告は一括管理が楽ちんでいいですよね。ポリシー違反があっても簡単に非表示にできて、広告もデフォルトで勝手に挿入される状態が一番です。

いちいち記事ごとに広告タグを張り付ける人は、さすがにいないと思いますが(プラグインで簡単にいけるしね)プラグインが無くても広告管理をする方法をまとめていきます。

アドセンス広告の貼り方(wordPressを使ってる人向け)

・広告管理はブログスタイルに合わせて考えよう
・広告を効果的に使う位置は決まっている
・テーマファイルに手動で書き足して管理する方法
・非表示にしたいページには条件分岐タグを活用
・関連記事コンテンツユニットは絶対使おう&カスタイマズも忘れずに

この辺を気にしていくと広告管理がものすごく楽になると思いますので、広告を設定し直すときがあれば忘備録にしておいてください。

wordPressを使っている人向けに解説していますので、他のブログサービスを使っている人は公式ヘルプなどを参考にしてみてね。

広告管理はブログスタイルに合わせて考えよう

極端なことをいえば「ずっと同じwpテーマを使うならwpテーマの広告管理機能」になり「適度にwpテーマを変更していくならテーマファイルを変更」した方が楽だと思います。

まずプラグインにはwpテーマとの相性があり、うまく動作しないものがあります。便利だと思ってインストールしたら、思わぬ不具合で1日つぶれた。なんてこともありますからね。

ですので、極力プラグインは使わずに「wpテーマの広告管理機能」もしくは「テーマファイルを変更」する方法をとっています。

日々更新していくブロガースタイルなら、wpテーマで気に入ったのが発売されれば乗り換えると思いますから「テーマファイルを変更」にした方がいいと思います。

逆に、サイトの構成を最初に決めていて「どの記事をいくつ書いて完成するのか」といったマインドマップが出来上がっている状態なら、サイトが完成した後にwpテーマを入れ替えることも少ないでしょうから「wpテーマの広告管理機能」もしくはプラグインを使って管理した方が楽になります。

テーマファイルに手動で書き足して管理する方法(準備編)

テーマファイルを変更していく前に確認しておくことがあります。

1、張りたい広告の種類に合わせた作業になるので広告の種類チェック

2、テーマは親テーマではなく「子テーマ」を使うべし

3、子テーマに必要なファイルが無い場合は親テーマからコピペ

4、広告の非表示ページをどこにするか確認

この4点を確認しておきましょう。

順番にチェックしていくと、すんなり作業することが出来るようになります。

1、張りたい広告の種類に合わせた作業になるので広告の種類チェック

アドセンス広告には「テキスト広告とディスプレイ広告(普通のアドセンス広告)」「インフォード広告(記事一覧にまぎれこむタイプ)」「記事内広告(文中にシレっと出てくるヤツ)」「関連コンテンツ」があります。

この他にも「自動広告」といって、ヘッダーに広告タグを入れておくと自動で広告を配信してくれるタイプもあります。

どの広告を選ぶかによってテーマファイルが変わってきますので、最初に使う広告を決める必要があるんです。

・「自動広告」ならheader.phpに記入(ヘッダー)

・「テキスト広告とディスプレイ広告」「タイトル上」「記事内広告」「関連コンテンツ」のような記事本文内に表示させるにはsingle.phpに記入(投稿ページ)

・「インフォード広告」のように記事(カテゴリ)一覧に表示させるなら、使ってるwpテーマで対応しているファイルに記入

※wpテーマによっては、ファイルが複数に別れている場合がありますので気を付けましょう

どの広告を使うか決めたら「広告コード」をメモしておきましょう。

過去に作成したコードなら「広告ユニット」⇒「コードを取得」で再表示できます。

新しく作る場合は「広告ユニット」⇒「新しい広告ユニット」から新規作成を行いコードをメモ帳などに保存しておきましょう。

2、テーマは親テーマではなく「子テーマ」を使うべし

親テーマに直接かきこみしちゃうと、親テーマがバージョンアップなどで更新が入った際に、入力していた記述も消えます。アップデートの度に初期化されたら、やってられませんよね。

更新が入っても、更新前と変わらずに設定を残すなら「親テーマ」ではなく「子テーマ」を使えばいいんです。

そうすれば、常に新しい親テーマを使えて、設定は「子テーマ」に残っているので「最新のバージョン&自分の設定」を常に保つことができるんですよ!

ですので、普段使うテーマは、使いたいテーマの「子テーマ」を使うんです。

テーマファイルを書き換える場合も一緒です。

親テーマを変更してもバージョンアップが入ると台無しになるので、常に残っていくように「子テーマ」のファイルを書き換えましょう。

3、子テーマに必要なファイルが無い場合は親テーマからコピペ

子テーマは、親テーマからデータを参照していますので無駄なファイルはないケースがほとんどです。

style.cssやfunctions.phpはあっても、header.phpやsingle.phpが無いかも知れません。そんな時は「親テーマ」からファイルをコピペしちゃいましょう。

functions.php以外なら、そのままコピペしても動きます。functions.phpだけは子テーマ側の記述を変更しないと真っ白にしちゃいますので下手にいじらない様にしてくださいね。

header.phpとsingle.phpをコピペしておけば、インフォード広告以外に対応出来ちゃいますので、この2つはコピペするといいですよね。

Xサーバーで親テーマから子テーマへファイルをコピペする方法

Xサーバーへログインし「ファイルマネージャー」⇒「ドメイン名」と進みます。

その中にある「public_html」⇒「wp-content」⇒「themes」の順に進めばテーマファイルのフォルダ一覧になります。

コピペしたいファイルのある親テーマから、コピペしたいファイルを探します。探し出したファイル名をクリックすれば自動的にファイルをダウンロードしてくれますので、そのまま保存しておきます。

次に、「themes」⇒「子テーマ」へ行きます。

先ほどダウンロードしたファイルを、画面右側の「ファイルを選択」から選んで「アップロード」をクリックします。

これで子テーマへファイルのコピペ完了です。

4、広告の非表示ページをどこにするか確認

広告の配置でNGの箇所がありますよね?

ログインページや404などのエラーページですよね。ホントはもっと細かいですので確認したい方はGoogleの「広告の配置に関するポリシー」へどうぞ。

通常はwordPressのログインページに広告が出てきていることは無いはずですから、対応するのは404ページになります。

また、ポリシー違反を指摘されていたページに広告を張ることもNGなので、過去に指摘を受けたページ&怪しい記事はアドセンス広告を非表示にしておきましょう。

テーマファイルを編集する前に非表示のページを調べておくことで「条件分岐タグ」を設定することが出来ます。(○○の場合には広告表示、××の場合は非表示)

条件分岐タグで、404ページと特定ページを指定する方法はコチラの記事で解説しています。

あわせて読みたい
【解決方法】アドセンスのポリシー違反が直らない!?警告メールと404ページ 以前に、過去記事がポリシー違反になってて広告非表示のメールきちゃいました>< なんてことをコッソリと報告させて...

テーマファイルに手動で書き足して管理する方法(実行編)

いよいよテーマファイルを編集していきます。

先ほどチェックした

1、張りたい広告の種類に合わせた作業になるので広告の種類チェック

2、テーマは親テーマではなく「子テーマ」を使うべし

3、子テーマに必要なファイルが無い場合は親テーマからコピペ

4、広告の非表示ページをどこにするか確認

この4点で調べた内容を使っていくので「wordPressのテーマ編集」と「メモした内容」を開いておくとサクサク進みます。

ここで編集するPHPの種類

・header.php
・single.php
・インフォード広告用の一覧インデックス(wpテーマよって違う)

「header.php」を編集 自動広告を使う場合

実際に使うアドセンスの自動広告コードは

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({
          google_ad_client: "ca-pub-ここにアドセンスのID",
          enable_page_level_ads: true
     });
</script>

こんな風になっていると思います。

このアドセンスコードに、条件分岐タグを加えて

<? if(!is_404( ) && !is_single( array( 111, 222, 333 ) )){ ?>

<p class="ad-label">スポンサーリンク</p>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <script> 
(adsbygoogle = window.adsbygoogle || []).push({ 
google_ad_client: "ca-pub-ここにアドセンスのID",
 enable_page_level_ads: true
 }); 
</script> 
<? } ?>

こうすると、404ページ&記事ID111、222,333の記事には広告を表示しないことになります。非表示にする記事が無い場合は「 && !is_single( array( 111, 222, 333 ) )」この部分を削除でOKです。

投稿ページの場合は「single」になり、固定ページの場合は「page」になります。

コードを追記する場所は、header.phpの最後の行に追記でOKです。

「single.php」を編集 記事ページに表示させる広告

広告の種類でいえば「テキスト広告とディスプレイ広告(普通のバナーとリンクユニット)」「記事内広告」「関連コンテンツ」に別れます。

1、タイトル上(下) ⇒リンクユニット

2、h2タグ直上   ⇒記事内広告 or ディスプレイ広告

3、記事下     ⇒記事内広告 or ディスプレイ広告 or 関連コンテンツ

どれもsingle.phpへ追記していく形になるのですが、場所を指定する必要があります。

タイトル上なら、本文が始まる前にコード追記でOKです。記事下も、文末の箇所へ追記でOK。

この2つについては、single.phpで「テスト」と追記して場所がどこにくるのかテストしながら確認していくのが確実です。wpテーマによって書かれている内容が変わってくるのでココなら確実にOK!って所がないんですよね。

wpテーマによっては「single.php」に書かれておらず、本文作成用のphpが別にあるケースがあります。その場合は、single.phpで「get_template_part(‘〇〇’)」の○○ファイルを探してみてください。

リンクユニットなどの「タイトル上(下)への追記方法」

追記するコードは先ほどと一緒です。条件分岐タグでアドセンスコードを囲ってあげる形になります。

<? if(!is_single( array( array( 記事ID, 記事ID, 記事ID ) )){ ?>
<p class="ad-label">スポンサーリンク</p>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">
</script> 
<!-- ここは広告の名前(リンクユニット) --> 
<ins class="adsbygoogle" 
style="display:block" 
data-ad-client="ca-pub-ここにアドセンスのID" 
data-ad-slot="広告ID" 
data-ad-format="link"></ins> <script> 
(adsbygoogle = window.adsbygoogle || []).push({}); 
</script> 
<? } ?>

リンクユニットなどのタイトル上(下)に表示させたい広告は、single.phpのタイトル表示の直前にコピペしてあげればOKです。
タイトルは「h1タグ」で囲われているようになっているはずですので「<h1>から</h1>」がタイトル部分になります。
ですので、この前後に入力していきます。

※非表示にする記事が無い場合は条件分岐タグを削除してアドセンス広告コードをコピペでOKです。

wpテーマによっては、<h1></h1>の前後に入力するとうまくいかない場合もあります。

子テーマのファイルを使って操作していますので、うまくいかない場合は少しズラしながら調整してみてください。もし大事な所を消しちゃっても「親テーマ」からファイルをコピーしてくれば元通りですから色々試してみてください。

記事下に関連記事コンテンツユニットを表示させる方法

コード自体は先ほどのリンクユニットのものと同じように作って大丈夫です。

リンクユニットのアドセンスコードを、関連記事コンテンツユニットのアドセンスコードに書き換えるだけになります。

書き込む場所は、記事本文が終わった直後が理想的ですから「<footer>」が開始する前後部分に入力すると記事下にうまく収まっていきます。

※single.phpの一番下に追記するとサイトの最下段にドーン!と出たりするので注意ですよ。

記事内広告「h2タグ上」に自動挿入が一番めんどくさい

functions.phpを編集する必要があります。

これまで編集してきたheader.phpやsingle.phpと違い、functions.phpの設定を間違えるとブログ自体をフッ飛ばす恐ろしい力を秘めたファイルになります。

必ずバックアップを取ってから作業してください。

「一番上のh2タグ上」だけに表記する場合
function add_ads_before_1st_h2($the_content) {
  if (is_single()) {
    //アドセンス広告タグを記入
    $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タグ直上へ広告の自動挿入が出来るようになりました。
全記事一括で表示されてしまうので、非表示ページを作りたい方「 if (is_single()) {」の部分を「ifi (!is_single( array( 記事ID, 記事ID, 記事ID, 記事ID ) ) ){」へ記載することで非表示ページを指定することが出来ます。

複数のh2タグ上」に表記する場合
function add_ad_before_h2_for_3times($the_content) {
//広告(AdSense)タグを記入
$ad = <<< EOF
//////////////////////////
//ここにアドセンスを挿入//
//////////////////////////
EOF;
 
  if ( is_single() ) {//投稿ページ
    $h2 = '/^<h2.*?>.+?<\/h2>$/im';//H2見出しのパターン
    if ( preg_match_all( $h2, $the_content, $h2s )) {//H2見出しが本文中にあるかどうか
      if ( $h2s[0] ) {//チェックは不要と思うけど一応
        if ( $h2s[0][0] ) {//1番目のH2見出し手前に広告を挿入
          $the_content  = str_replace($h2s[0][0], $ad.$h2s[0][0], $the_content);
        }
        if ( $h2s[0][1] ) {//2番目のH2見出し手前に広告を挿入
          $the_content  = str_replace($h2s[0][1], $ad.$h2s[0][1], $the_content);
        }
        if ( $h2s[0][2]) {//3番目のH2見出し手前に広告を挿入
          $the_content  = str_replace($h2s[0][2], $ad.$h2s[0][2], $the_content);
        }
      }
    }
  }
  return $the_content;
}
add_filter('the_content','add_ad_before_h2_for_3times');

こうすることで、同じ広告を3個目までのh2タグ上へ配置できるようになります。
記事コンテンツ量が豊富で何か所も広告を配置してもユーザーの利便性が確保できるならアリな方法ですね。

・非表示ページを作る場合は「if (is_single()) {」の部分を「ifi (!is_single( array( 記事ID, 記事ID, 記事ID, 記事ID ) ) ){」に変更してください。

・if ( $h2s[0][1] )の2つ目の[1]でh2タグの順番を指定しているので変更したい場合は調整してください

・数を減らしたい場合は「 if ( $h2s[0][2] ) 」~直後の「}」までを削除すればOKです。

 

複数のh2タグ上」に別々の広告を表記する場合
function add_ad_before_h2_for_3times($the_content) {
//1つ目の広告タグを挿入
$ad1 = <<< EOF
//////////////////////////
//ここにアドセンスを挿入//
//////////////////////////
EOF;
//2つ目の広告タグを挿入
$ad2 = <<< EOF
//////////////////////////
//ここにアドセンスを挿入//
//////////////////////////
EOF;
//3つ目の広告タグを挿入
$ad3 = <<< EOF
//////////////////////////
//ここにアドセンスを挿入//
//////////////////////////
EOF;
 
  if ( is_single() ) {//投稿ページ
    $h2 = '/^<h2.*?>.+?<\/h2>$/im';//H2見出しのパターン
    if ( preg_match_all( $h2, $the_content, $h2s )) {//H2見出しが本文中にあるかどうか
      if ( $h2s[0] ) {//チェックは不要と思うけど一応
        if ( $h2s[0][0] ) {//1番目のH2見出し手前に広告を挿入
          $the_content  = str_replace($h2s[0][0], $ad1.$h2s[0][0], $the_content);
        }
        if ( $h2s[0][1] ) {//2番目のH2見出し手前に広告を挿入
          $the_content  = str_replace($h2s[0][1], $ad2.$h2s[0][1], $the_content);
        }
        if ( $h2s[0][2] ) {//3番目のH2見出し手前に広告を挿入
          $the_content  = str_replace($h2s[0][2], $ad3.$h2s[0][2], $the_content);
        }
      }
    }
  }
  return $the_content;
}
add_filter('the_content','add_ad_before_h2_for_3times');

これで3つのh2タグ上へ別々の広告を配置することが出来ます。
「ディスプレイ広告」「記事内広告」「リンクユニット」を使い分けることも可能です!

細かな変更は先のポイントを参考にしてみてください。

非表示ページを作る場合は「if (is_single()) {」の部分を「ifi (!is_single( array( 記事ID, 記事ID, 記事ID, 記事ID ) ) ){」に変更ですからね!

functions.phpに張り付ける自動挿入のコードをまとめるにあたり、寝ログさんの記事を参考にさせて頂いています。

本文記事1、2、3番目のH2見出し手前にアドセンスを挿入するWordPressカスタマイズ方法

 インフォード広告はどうやって入力していこうか?

トップページの記事一覧や、カテゴリ一覧ヘージの「記事と記事の間」に表示させる広告なんですが、どのwpテーマでも「コレに書き込めば大丈夫!」って言うのがないんですよね。

ストークはparts_archive_simple.phpだし、Stinger8はitiran.phpだし、賢威7はcont.phpだったりしますから、記入すべきphpは使っているwpテーマのサポートに問い合わせるなどして確認してみてください。

基本的には「条件分岐タグ」と「アドセンスコード」を組み合わせた形を入力することでOKです。

ここまで書いて思ったのは「便利なテーマ使おうよ」

phpへ広告コードを記入して日々の広告管理を楽にすることも可能ではあるのですが、そもそもphpへの記入がめんどくさい!ってなります。

wpテーマのウィジェットや広告管理機能を使った方が間違いなく楽です。ただ、めんどくさくなるのが「非表示にしたい記事」が出てきた時なんですよね。

wpテーマによっては、一括管理は出来ても個別管理が出来ないタイプもまだまだあります。アドセンスを使っていく上で、自分でコードを書き込めるのは1つの強みにはなるでしょうが、出来るだけ負担を減らして記事作成に集中するのであれば、広告管理しやすいwpテーマを使った方がいいです。

広告管理が簡単なwpテーマおすすめ3つ

『JIN(ジン)』
読む人も、書く人も
すべてを考え抜いたデザイン。
真の使いやすさを追求したWPテーマ
アフィリエイトで報酬を追求するなら
一家に1テーマ必須かも!?
評価
購入金額 14,800円
使いやすさ ボタン1つで作れる簡単操作、ブロガー&アフィリエイター向け
広告管理 記事別の「表示/非表示」可能

詳細ページ口コミまとめ

WING(AFFINGER5版)
デザイン簡単、SEO対策と広告収入UPの機能が標準装備。
さらに美しく、パワフルに。「稼ぐ」に特化したWING – AFFINGER5
5/15までの限定特典「SUGOI MOKUJI」つき
評価
購入金額 12,800円
使いやすさ 細部まで初心者でも簡単作成、アフィリエイト向き
広告管理 Googleアドセンス自動広告機能あり、記事別の「表示/非表示」可能

詳細ページ専用プラグインをチェック

simplicity2
シンプルながらSEO対策済みのWPテーマ
ユーザーが自ら自由なスタイルで後からカスタマイズしやすい土台として作られているので、作りこみ要素◎
評価
購入金額 無料
使いやすさ シンプルな分、カスタイマズの自由さはあるけど、知識がないと加工しにくい
広告管理 記事別の「表示/非表示」可能、カテゴリ指定もOK

詳細ページ公式ページ

アドセンスの広告貼り方 まとめ

アドセンスの広告の種類ごとにphpへ入力して表示させる方法、記事別に広告を非表示させる方法を解説しました。
wpテーマについている広告管理機能やプラグインだけでは上手く操作できなかったことも、phpを編集することで自由度がアップしましたね。

この記事のまとめ

1、アドセンスで広告管理するページを考える
2、広告非表示ページを作るにはphpで管理するのが楽
3、自動広告はheader.phpを編集(404非表示を忘れずに)
4、記事内に表示させるのはsingle.phpを編集
5、インフォード広告はwpテーマでファイルが変わってくるので作成元へ問合せ
6、広告管理が楽になるwpテーマを使う方が記事作成に集中できる

こういったところになります。

作業を開始する前には必ずバックアップを取ってから開始するようにしましょう。
特にfunctions.phpを編集する際には慎重にしましょうね。

他にも、非表示ページを作る場合は「if (is_single()) {」の部分を「ifi (!is_single( array( 記事ID, 記事ID, 記事ID, 記事ID ) ) ){」に変更してから作業しましょう。

記事内広告のif ( $h2s[0][1])の2つ目の[1]でh2タグの順番を指定しているので変更したい場合は調整することも出来ます。数を減らしたい場合は「 if ( $h2s[0][2] ) 」~直後の「}」までを削除すればOKです。

アドセンス広告は、そのまま使っても報酬を得ることは可能ですが、広告表示に気を使っていくことで更なる報酬UPに繋がっていきます。

今より少しでも報酬をアップしたい!と思うなら、広告管理もしていきましょうね。

一番報酬に直結するのは、記事を書き続けることだけどね!

PC販売オススメ
ランキング1位 ドスパラweb
『ドスパラweb』
一般PCからゲーミングPCまでを幅広く扱っている有名処ですね。
安いPCから本格派PCまでより取り見取り!
カスタイマイズし放題!
評価
カスタイマイズ 細かい設定が可能
中古販売&買取 買取&中古販売アリ!下取りに出してから購入もOK
出荷 毎日

☆ゲーム用パソコンならドスパラ!☆