【賢威8】トップのロゴ画像(ヘッダー画像)に最適なサイズは?

昨今、サイトへのアクセスがモバイルからの流入がほとんどとなり、アドセンス広告も記事内への表示が主流となっています。

しかし、賢威8にはアドセンス広告専用の機能は実装されていません。

そこで、アドセンス広告を記事上、記事中、記事下に貼る方法としてどのような方法があるのか、お勧めの方法、お勧めしない方法や理由も含め、当記事で紹介します。

また、初心者向け、上級者向けについても触れていますので、ご自分に合った方法をお選びいただけます。

記事を投稿するたびにコードを貼り付ける【お勧めしない理由】

投稿記事内にアドセンス広告を貼る方法の一つとして、記事投稿画面でアドセンスの広告コードを直接コピー&ペーストする方法があります。
記事を投稿するたびにコードを貼り付ける【お勧めしない理由】

初心者の方には最も分かり易く、簡単にアドセンス広告を設置できますが、この方法はお勧めできません。
お勧めしない理由は、次の通りです。

  • 理由その1
    記事を書くたびに広告コードを直接コピー&ペーストしなくてはいけないので、手間がかかります。
    「AddQuicktag」のようなタグ挿入プラグインを使って、広告コードを管理しながら記事を作成することになると思いますが、それでも手間が増えることには変わりありません。

  • 理由その2
    広告コードを記事に貼り付けるのはコピー&ペーストだけとはいえ、毎回手作業が発生すると間違いが起きる可能性があります。
    特に、記事上、記事中、記事下に別々の広告コードを貼り付ける場合には、「AddQuicktag」のようなタグ挿入プラグインを使っていても、人間の行うことですから貼り間違えをすることもあり得ます。

  • 理由その3
    万が一、何かしらの理由で広告コードを貼り換えや、削除しなくてはいけなくなった場合、非常に手間がかかります。
    例えば、アドセンスから警告を受けるような広告の貼り方をしていた場合、すぐに対応したいと思っても、ページ数次第では全ての広告に対応するのにかなり時間を要する可能性がでてきます。時間がかかれば、ペナルティーを受けることにもなりかねません。

以上がお勧めしない理由でした。

プラグインを利用する

投稿記事内にアドセンス広告を貼る方法で、初心者の方に最もお勧めなのはプラグインを使う方法です
上級者の方でも、もちろんプラグインを使われている方は多いです。
もっと言うなら、投稿記事内にアドセンス広告を貼る方法として最も多いのが、プラグインを使う方法だと私は思っています。私の周りではほとんどの方がプラグインを使っています。
(※ 調査した訳ではないので、個人的な感想です)

世間一般的には、「プラグインの使い過ぎに注意」とか、「プラグインは競合して使えないことが結構ある」とか、よく言われます。私もエンジニアの端くれとしてこの意見には同意もしますが、使うべきプラグインを正しく使えば、便利な道具であるのは間違いないので、正しい選択をどうやってするかを考えるべきでしょう。

おすすめは“WP QUADS”と“Advanced Ads”

私がお勧めするアドセンス広告を貼るプラグインは、「AdSense Integration WP QUADS」(以下 WP QUADS)と「Advanced Ads – Ad Manager & AdSense」(以下、Advanced Ads)の二つです。

数年前までは、「AdSense Maneger」というプラグインが主流でしたが、7年も前から更新が止まっており(2019/9/19日時点)、それに代わるプラグインとして浮上してきたのが、この二つです。

下の表はアドセンス広告を貼るプラグインを、次の観点でまとめたものです。

  • 50サイト調査
    「アドセンス プラグイン おすすめ」や「アドセンス 自動広告 プラグイン」等々で検索したサイトを50件抽出し、その記事に紹介されているプラグインを調査した結果です。
  • 有効インストール数
    WordPressでインストールされたプラグインの概数です。
  • Google検索―1年以内,日本語
    プラグイン名によるGoogle検索で、期間指定が「1年以内」、ページの言語が「日本語」の条件で検索して得られたヒット数です。プラグイン名は完全一致で検索しています。
  • Google検索―期間なし,日本語
    プラグイン名によるGoogle検索で、期間指定が「期間なし」、ページの言語が「日本語」の条件で検索して得られたヒット数です。プラグイン名は完全一致で検索しています。
  • Google検索―期間なし,全言語
    プラグイン名によるGoogle検索で、期間指定が「期間なし」、ページの言語が「全言語」の条件で検索して得られたヒット数です。プラグイン名は完全一致で検索しています。
プラグイン名 50
サイト
調査
有効
インス
トール数
Google検索
1年以内,
日本語
期間なし,
日本語
期間なし,
全言語
WP QUADS(Quick Adsenseの後継) 27 80,000+ 1,230 57,700 65,900
Advanced Ads 18 100,000+ 1,420 19,000 80,100
Ad Inserter 6 200,000+ 374 2,570 93,400
Quick Adsense 3 100,000+ 197 3,110 34,400
Wp-Insert 1 20,000+ 122 1,110 20,400
Easy Google AdSense 0 10,000+ 3 167 9,170
WP Simple Adsense Insertion 0 10,000+ 0 9 2,490

※ スマートフォン用の画像(クリックで拡大)
おすすめは“WP QUADS”と“Advanced Ads”

アドセンス広告を貼るプラグインをネットで調査した結果(表の「50サイト調査」)、「WP QUADS」と「Advanced Ads」がよく勧められているのが分かりました。

有効インストール数からも、この二つのプラグインがよく利用されていることがうかがえます。有効インストール数は海外のインストール状況も含まれていますので、「Ad Inserter」は海外でよく使われていることが分かります。

参考となる日本語のサイトもこの二つは1000サイト以上と多く、分からないことがあっても先人の知恵や経験を借りることができそうです。

どちらを使うか

お勧めは「WP QUADS」と「Advanced Ads」の二つに絞られましたが、それではどちらを使えばよいのでしょうか。
次のような条件で選んでみてはいかがでしょうか。

  1. WordPress初心者の方は「WP QUADS」、上級者の方は「Advanced Ads」
    「WP QUADS」は設定や使い方が「Advanced Ads」に比べれば比較的簡単です。「Advanced Ads」は少し使い方が分かり難いところがあり、最初はまごつくかもしれません。
    アドセンス広告を記事の上、中、下に貼れるだけでよければ、「WP QUADS」で十分対応できます。
  2. 「WP QUADS」は英語表記、「Advanced Ads」は日本語表記
    どうしても日本語表記のプラグインが良いという方は「Advanced Ads」となります。
    「WP QUADS」は英語表記となりますが、日本語化するファイルが提供されているので、FTPを使うことのできる方であれば、日本語対応も可能です。
  3. より多機能を求める方は「Advanced Ads」
    「WP QUADS」に比べれば「Advanced Ads」の方が機能面では充実しています。
    「Advanced Ads」では、インフィード広告やアドセンスと連携した自動広告の設置、広告のエラーチェック機能などが付いており、「WP QUADS」に比べると機能が豊富です。
    また、「H2タグ」の上に貼る指定もできるので、より細かな表示位置の指定も可能です。
    上にも書きましたが、使い方が分かり難いのがデメリットです。
  4. 番外編
    上でも書きましたが、プラグインなのでインストール後にエラーや警告メッセージが出てしまうことがあります。理由はテーマや他のプラグインとの相性など、原因がつかめない場合もあります。
    現に私も「Advanced Ads」でテーマとの相性が合わない経験をしていますし、「WP QUADS」ではサーバーとの相性の問題がネットで報告されています。
    まずは、上の1. 2. 3. の条件でプラグインを選び、万が一、エラーや警告が発生したら、他のプラグインを使用するという選択もあるかと思います。

二つのプラグインの使い方については、こちらで詳しく紹介しています。


PHPコードをカスタマイズする【上級者向け】

子テーマの 「functions.php」を使って、アドセンス広告を記事内に貼る方法を紹介します。

この方法は、ミスをするとブログ全体が表示されなくなったり、管理画面にログインもできなくなったりすることもあるので、FTPが扱え(今回は不要ですが)、PHPコードが多少なりとも理解できる上級者向けのカスタマイズ方法になります。

子テーマの 「functions.php」をカスタマイズする方法はこちら↓をご覧ください。

次のPHPコードを子テーマの 「functions.php」にコピー&ペーストしてください。

黄マーカの箇所にアドセンス広告コードを貼り付けてください。記事上、記事中、記事下に別々のアドセンス広告コードを設置できるような仕様になっていますが、同じアドセンス広告コードで良い場合は3ヶ所全て同じアドセンス広告コードを貼り付けてください。

このPHPコードの下に仕様を記載しています。

//#  記事内にアドセンス広告を挿入する
class CaContentInsertTag
{
  //# メンバー変数
  public $_sysInfo;		// 引継ぎ情報


  //# --------------------------------------------------------------
  //# コンストラクタ
  //# --------------------------------------------------------------
  public function __construct()
  {
    //# 広告HTMLタグ

    // 記事上
    $this->_sysInfo['ads_before'] = <<<EOF
/////////////////////////////////////////////////////////////
// 記事上に貼りたいアドセンス広告コードをコピー&ペースト  //
/////////////////////////////////////////////////////////////
EOF;

    // 記事中
    $this->_sysInfo['ads_inside'] = <<<EOF
/////////////////////////////////////////////////////////////
// 記事中に貼りたいアドセンス広告コードをコピー&ペースト  //
/////////////////////////////////////////////////////////////
EOF;

    // 記事下
    $this->_sysInfo['ads_after'] = <<<EOF
/////////////////////////////////////////////////////////////
// 記事下に貼りたいアドセンス広告コードをコピー&ペースト  //
/////////////////////////////////////////////////////////////
EOF;

    //# 広告自動挿入実行
    add_filter('the_content', array($this, 'content_text'), 9999);

  }


  //# --------------------------------------------------------------
  //# テキスト記事内に広告を掲載
  //# --------------------------------------------------------------
  public function content_text($the_content) 
  {
    //# 投稿記事チェック(投稿記事以外はスルー)
    if (!is_single()) {
      return $the_content;
    //# ログインチェック(管理画面ログイン時はスルー)
    } elseif (is_user_logged_in()) {
      return $the_content;
    }

    //# 初期処理
    $the_content = preg_replace("/^(\r\n|\r|\n| | )+/iu", '', $the_content);
    $flg_before = $flg_inside = true;
    $replace = array();

    // コンテンツ文字数算出
    if (mb_strlen(strip_tags($the_content)) < 500) {
    // 500文字未満の場合は記事上、記事中はタグを挿入しない。
      $flg_before = false;
      $flg_inside = false;
    } elseif (mb_strlen(strip_tags($the_content)) < 1000) {
    // 1000文字未満の場合は記事中はタグを挿入しない。
      $flg_inside = false;
    }

    //# 記事上にHTMLタグ挿入
    if ($flg_before) {
      // H2タグ前に導入文があるか
      if (preg_match_all('/<h2.*?>.+?<\/h2>/ium', $the_content, $h2s)){
        if (preg_match('/^(.*?)<h2.*?>/iu', preg_replace("/(\r\n|\r|\n)+/iu", '', $the_content), $exa)
         && mb_strlen(strip_tags($exa[1])) > 250
        ) {
          $the_content = str_replace($h2s[0][0], $this->_sysInfo['ads_before'].$h2s[0][0], $the_content);
        }
      }
    }

    //# 記事中にHTMLタグ挿入
    if ($flg_inside == true
     && preg_match_all('/<h2.*?>.+?<\/h2>/ium', $the_content, $h2s)
     && is_array($h2s)
    ) {
      if (count($h2s[0]) > 5
       && count($h2s[0]) < 8
      ) {
        $the_content = str_replace($h2s[0][3], $this->_sysInfo['ads_inside'].$h2s[0][3], $the_content);

      } elseif (count($h2s[0]) > 7) {

        $the_content = str_replace($h2s[0][3], $this->_sysInfo['ads_inside'].$h2s[0][3], $the_content);
        $the_content = str_replace($h2s[0][6], $this->_sysInfo['ads_inside'].$h2s[0][6], $the_content);
      }
    }

    //# 記事下にHTMLタグ挿入
    $the_content = $the_content.$this->_sysInfo['ads_after'];

    return $the_content;
  }

}

// クラス実行
$main_page = new CaContentInsertTag();
仕様
  • このPHPコードでのアドセンス広告表示は、投稿記事のみを対象としています。固定ページ、サイドバー等、投稿記事以外の場所へのアドセンス広告は表示しません。
  • WordPressの管理画面にログイン時、アドセンス広告は表示しません。
  • アドセンス広告はH2タグの上に表示します。したがって、記事内にH2タグがない場合は、アドセンス広告も表示されません。
  • 記事上へのアドセンス広告は、記事全文の文字数が500文字以上の場合に表示されます。
  • 記事中へのアドセンス広告は、記事全文の文字数が1,000文字以上の場合に表示されます。
  • 記事下へのアドセンス広告は、常に表示されます。
  • 記事上へのアドセンス広告は、最初のH2タグの上に表示されます。
  • 記事中へのアドセンス広告は、H2タグが6個以上のとき4番目のH2タグの上に表示されます。また、H2タグが8個以上のとき4番目と7番目のH2タグの上に表示されます。
注意

日本語サイトの場合、「WP Multibyte Patch」プラグインが導入されていないと、正確な文字数をカウントすることができません。ご注意ください。

まとめ

投稿記事内にアドセンス広告を貼る方法として、個人的にはプラグインを利用することをお勧めします。初心者でも、上級者でもです。

プラグイン利用が基本スタンスだが、お使いのブログと相性の合うプラグインがないか、プラグインが持っている機能をほとんど必要としていない場合に、PHPコードをカスタマイズする方法を検討するというという方向性になるかと思います。

ネットにも参考になるサイトが豊富にありますから、プラグインを使って気楽にブログをカスタマイズしてみてはいかがでしょうか。