ブログの記事中、特にリード文あとの広告は、アドセンスの収益面からみて有効な手段だと思います。
その理由は、ページに訪れてみたもののリード文を読んで離脱する読者のための出口として、ある程度機能するからです。以前僕もブログで実験したことがあるのですが、それなりに効果もありました。
けれど昨日まで、このブログでは、そんな効果のあった記事中広告を使用していませんでした。
それはなぜか?
記事に毎回広告を挿入するのが面倒くさいからです…。
記事中広告の是非はさておき、収益面を考えれば挿入した方が良いのでしょうが、地味に面倒くさいのが嫌だったんです。
けれど先日、そんな面倒くさい広告挿入から解放される方法を思いつきました。
ということで今回は、Wordpressでプラグインを使用せず、記事を編集することもなく、手軽に広告を挿入する方法を紹介したいと思います。
追記:よりスマートな方法を考えてみました。
追記:さらに簡単な方法を考えてみました。
photo by quickonlinetips
目次
これまでの記事中にアドセンスを挿入する方法
これまで使われている、アドセンスを記事の中に挿入する方法といえば、主に以下の4つだと思います。
- HTMLタグをコピーして貼り付ける
- moreタグ<!–more–>を置換する
- プラグインを使用して挿入する
- functions.phpでショートコードを設定し挿入する
「Wordpress AdSense 記事中」でググっても、上位に出てくるほとんどのものが2、3、4の方法です。
これらの方法でもOKという方は、以下の記事がとても参考になります。
1は、最も手間のかかる方法です。これだと毎回毎回HTMLタグをコピペするのも面倒ですし、タグは場所をとるので記事の可読性も下がります。
2、3、4の方法も、タグをコピペするよりはかなり楽なのですが、使用するにはmoreタグや、ショートコードを記事に挿入する必要があります。いくら収益アップが見込めるとはいえ、これを過去記事すべてに挿入するのは非常に骨の折れる作業です。
けれど、先日良い方法を思いついたので試してみたら、うまくいったので以下で紹介したいと思います。
記事編集、プラグイン不要で記事中にアドセンスを挿入する方法
その方法とは、見出し前に広告を挿入する方法です。
大抵のブログならリード文(書き出し部分)のあとに、H2見出しが挿入されているはず。(多分)その見出し手前に広告を挿入するというものです。
具体的な仕組みとしては、
- functions.phpで本文表示前にフック
- 記事表示前にH2タグの手前にAdSense広告を挿入
- 本文記事を表示
というもの。
functions.phpにコピペして、ちょこっといじるだけでH2タグが入っている記事のすべてに広告が挿入されるようになります。
わかりやすく図で説明すると以下のようになります。
これまで、当ブログではこのような広告配置でした。
この広告配置で最も収益が高いのは記事本文後にある「広告1」と「広告2」でした。
関連記事にある「広告3」は、ずいぶん下にあるためか効果はあまり高くありません。直近1ヶ月のアドセンス収益で言えば、全体の14%程度でした。
アドセンス収益の86%は記事下の広告からということになります。
今回行う方法で、以下のように「広告3」を、より人の目の触れやすい記事中に持ってくることで収益アップを図ります。
上記の「広告3」は、本文に入る前のリード文を読んで離脱する人向けの出口となる広告です。リード文で離脱する読者は必ず一定数いるので、そういった読者の目にも触れるように広告を移動したことになります。
※この方法を使えるのは本文中に見出し(H1-6タグ、H2が望ましい)を使っているブログのみです。文中に全く見出しタグを使っていないブログでは、全く意味のないカスタマイズになります。
広告を挿入する設定方法
設定方法も特に難しくはないと思います。
ただし、functions.phpを編集するのでファイルのバックアップは必ずとっておいてください。
最初のH2見出し手前に広告を挿入する設定
さて設定ですが、functions.phpに以下のように記述するだけです。
本文表示前にフックして、最初の<h2>タグ手前に広告を挿入しています。
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が無い場合は、関連記事下に表示する設定
上の方法だけだと、記事本文中にH2タグを使用していない記事では、3つまで表示できるアドセンス広告の2つまでしか表示されません。
せっかく3つまで表示できるんだから、できる限り表示させるために、関連記事下の広告設定は以下のように行います。
<?php if ( !preg_match('/<h2.*?>/i', get_the_content()) ): //本文中にH2見出しがない場合 ?> ////////////////////////////////// //ここにアドセンスタグを挿入する// ////////////////////////////////// <?php endif; ?>
ここでは、本文中にH2見出しが見つからない場合、関連記事下に広告を表示するように設定しています。
もし、stinger3のように、モバイルとPCのデザインが違う配置を使っていて、表示数がうまく折り合わない場合は、wp_is_mobile()などの関数をうまく併せて使用してみてください。
stinger3での設定について
stinger3での広告配置については、以下の記事と合わせて読むとわかりやすいと思います。
このブログテーマは現在、stinger3を使用しています。ですので効果的な広告位置などは上記記事を参考にさせてもらいました。
あと注意点が一つあります。stinger3を使っていてスマホで本文記事中に広告を表示すると、広告が見切れてしまいます。それを防ぐには以下の方法を行ってください。
「記事中」にアドセンスを入れましたが、スマホで見ると画像が半分位で切れてしまいます。
まとめ
以上のように設定したことで、本文中でH2タグを使用している記事では、リード文後のH2タグ直前に広告が表示されます。(例:この記事)
本文中にH2タグを使用していない記事では、関連記事下に広告が表示されます。(例:何時間眠るのが適切か?厚生労働省が薦める年代ごとの睡眠時間)
今回の設定を行ったことで、PCでもスマホでも”収益的には”良い位置に3つ広告を表示できているのではないかと思います。
ということで、「記事中広告を考えているんだけど、プラグインを使ったり、ショートコードを挿入するのは面倒くさい」なんて方にはお勧めの方法ではないかと思います。
もし試してみて「やっぱ記事中に広告があるのは嫌だなぁ」とか「思ったより収益が上がらないな」と思っても、functions.phpに挿入したコードを削除し、関連記事下のコードを修正すれば元の状態に戻ります。そういった意味で気分的にも手軽に行えるのではないかと思います。
の代わりに独自定義のタグを使いたいときはどのように変えればよいのですか?
私は というタグを自分で定義して、見出しにそれを使っています。
そこで、このページにあるソースコード中の “h2” をすべて “.h” に置き換えてみたのですが、画面が真っ白になりました。