
Google AdSense 広告をブログ本文内に表示するには、どうすればよいですか?
WordPress ブログで「本文内」に Google AdSense 広告を表示する方法は数パターンあります。
だれでもすぐ実践できるものから多少知識を要求されるものまで様々なので、自分の環境・レベルに合わせて最適な方法を採用してみてください。
本記事では 6 通りの掲載方法とそれぞれのメリット・デメリットを解説しています。
Headline
(1)エディターで直接コードを記述する
本文内の任意の箇所に Google AdSense 広告を表示するのは、投稿編集画面のエディターで直接広告コードを記入(コピペ)するのが最も簡単な方法です。
ブロックエディターの場合は「カスタム HTML」ウィジェットを使えば OK です。

方法自体は簡単でも、記事を書くたびにコードをコピペしなければなりませんし、あとから修正するのが大変なので現実的ではないと思います。
広告の表示確認をしてみるとか、数記事でテストしてみるときはよいかもしれません。
- 好きな箇所に広告を表示できる
- 特別な知識は不要
- 毎回コードをコピペする必要がある
- あとから修正するのが大変
(2)再利用ブロックを使う
ブロックエディターを使用しているなら、Google AdSense の広告コードを再利用ブロックに登録しておくと使い勝手がよくなります。

コードを毎回コピペする必要はなく、コードの差し替えが必要なときも一括置換できるので便利ですね。ただ、全記事の広告位置を一括で変更する、ということはできません。
記事ごとに広告位置を細かく調整したいときはよいと思います。
- 好きな箇所に広告を表示できる
- 毎回コードをコピペする必要はなく一括置換もできる
- ブロックエディターにしなければ使えない
- 広告の位置の変更は手動で行う
(3)ショートコード化する
旧エディターを使っている場合は、ショートコード化すると再利用ブロックと同じような使い方ができます。ショートコードはブロックエディターでも使えるので、エディターを途中で変更しても大丈夫です。
自分でショートコードを作成するときは、functions.php に以下のコードを追記してください。
function showads() { return 'ここにアドセンスのコード'; } add_shortcode('adsense', 'showads');
Google AdSense 広告コードを入れるとこのようになります。
function showads() { return '<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-xxxxxxxxxxxx" data-ad-slot="xxxxxxxxxx"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script>'; } add_shortcode('adsense', 'showads');
投稿エディターで [adsense]
と入力した位置に Google AdSense 広告が表示されます。

functions.php の編集に抵抗がある、またはショートコードを視覚的に管理したい場合は「Shortcoder」などのプラグインを使うのがおすすめです。
- 好きな箇所に広告を表示できる
- エディター形式を問わず使える
- ショートコード実装の知識が必要(プラグインを利用すれば OK )
- 広告の位置変更や削除は手動で行う
(4)moreタグ(続きを読む)を置換する
投稿本文内に挿入した more タグを判定して広告コードに置換して表示する、ということもできます。
more タグはクラシックエディターなら <!--more-->
という表示で、ブロックエディターは「続きを読む」という表示になります。
Ateitexe さんの記事を参考に functions.php にコードを追記してみてください。
実際に広告コードを入れると以下のような形になります。
//more位置へ挿入 add_filter('the_content', 'adMoreReplace'); function adMoreReplace($contentData) { $adTags = <<< EOF <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-xxxxxxxxxxxx" data-ad-slot="xxxxxxxxxx"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> EOF; $contentData = preg_replace('/<span id="more-[0-9]+"><\/span>/', $adTags, $contentData); return $contentData; }
ブロックエディターは「続きを読む」ブロックを追加しておけば、そこに広告が表示されます(投稿編集画面には表示されません)。

functions.php の編集に抵抗がある場合はプラグイン「Ads by WPQUADS」がおすすめです。more タグにもとづく広告表示だけではなく、後述する「特定の要素をもとに自動挿入」もできます。
- more タグを入れた記事のみ反映される
- 毎回コードをコピペする必要がない
- functions.php の編集が必要になる(プラグインを利用すれば OK )
- 記事内で 1 回しか使えない
(5)ウィジェットを使う
テーマによっては、記事内の特定の箇所に反映されるウィジェットエリアが用意されています。
たとえば「Luxeritas」は「投稿内で最初に見つかった H2 タグの上」というウィジェットエリアがあるので、そこにカスタム HTML ウィジェットを配置すれば OK です。

全記事の最初の h2 の上、と固定されてしまいますが、個別に調整する必要がないのであれば問題ありません。
記事内のウィジェットエリアが用意されていないテーマや、任意の箇所にウィジェットエリアを複数作成したい場合は寝ログさんの記事を参考にカスタマイズしてみてください。
- ウィジェットを設定するだけで全記事に反映される
- 毎回コードをコピペする必要がない
- 記事ごとに掲載位置を変更できない
- テーマを変更するとウィジェットの再設定が必要になる
(6)特定の要素をもとに自動挿入する
カスタマイズが得意なら、ウィジェットを使わず特定の要素をもとに自動挿入する方式のほうがよいかもしれません。
寝ログさんでいくつかの方法が紹介されています。
また、先ほどご紹介した「Ads by WPQUADS」であれば、要素を自由に指定して広告を表示できます。
設定画面で「Ad After HTML Tag」を選択し、HTML タグを指定するだけで OK です。

全記事同じような構成・長さになっているならよいですが、記事によって見出しをまったく使わない/見出し~見出しの間隔が極端に短いなど、構成がバラバラな場合は使いづらいかもしれません。
- 全記事同じ位置に広告を表示できる
- 広告コードの一括置換や掲載位置変更が瞬時にできる
- 記事によって構成がバラバラなときは広告が任意の箇所に表示されないことがある
- 記事ごとの細かい表示位置調整はできない
まとめ
解説してきたとおり、WordPress ブログの投稿本文内に Google AdSense 広告を表示する方法はいくつかあるので、それぞれ試して自分の環境に合ったものを取り入れてみてください。
とくに抵抗がなければプラグインで管理するのが最も手軽で簡単だと思います。本記事で紹介した「Ads by WPQUADS」のほか、「Advanced Ads」というプラグインもよく使われています。
どの方法を取り入れるにしても、Google AdSense の規約を遵守しましょう。最悪、アカウント凍結になってしまいます。
また、収益を最大化するには掲載位置のほかにもいくつかのテクニックがありますので、そちらも徐々に勉強していってください。
それでは、また。