WordPress の投稿内で好きな場所に Adsense 広告を掲載させる方法をショートコードで実装
2016年8月中旬に Google Adsense の広告配置のポリシーが変更され、「1ページ配置可能な広告の上限」の項目が撤廃された代わりに「価値の高い広告枠」の項目が追加されました。
広告の配置に関するポリシー「価値の高い広告枠」 – AdSense ヘルプ
Adsense 広告掲載数の上限が無くなった
これまでは1ページ辺りの Adsense の広告数が最大で3つまでと定義されていたのが、コンテンツの量に合わせて上限なく貼り付けることができるようになりました。
ただ勘違いしてはいけないのが、闇雲にたくさんの広告を配置してはいけないと言うことです。あくまでもコンテンツの量に合わせた数であることがポリシーとしてうたわれています。
情報量に対する広告掲載の意識が必要となる
具体的な文字数の定義はありません。Google が判断する情報量に対しての適量なので、一概にどの程度の情報量に対して、いくつ Adsense を掲載するのが適切かは判断し難いものがあります。
故に、情報が少ないのに広告の掲載が多すぎると、価値の無いページと判断されたり、Adsense ポリシー違反としてアカウントが停止してしまうリスクもあるため、過剰な掲載は控えるように心掛けることが大切です。
その一方で、ブログ記事も長文化が定番となってきた昨今。広告が3つまでだと、文章量に対してどこに差し込めば効率が良いのか悩ましい現実もあったので、上限が解放されたのはブロガーにとってメリットが増えたのは言うまでもありません。
長文エントリーとなって情報量が増えた場合に、どこに広告を増やすのが効率的なのか。単純に、文章中の好きな場所に広告が載せられると、情報量に合わせて適宜調整できて便利ではないでしょうか。
そこで WordPress のショートコード機能を用いて、好きな場所に Adsense 広告が載せられるようにカスタマイズする方法について説明していきましょう。
WordPress のショートコードで Adsense タグを追加する方法
WordPress で修正が必要になるリソースは、テーマ内にある function.php となります。WordPress のサイドメニューにある [外観] → [テーマの編集] からテーマ構成ファイルを開き、ファイルリストから function.php を開きます。
そして次のコードを追加してください。
function.php への追加コード
function addadsense() {
return '<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- TEST_ADSENSE -->
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-XXXXXXXXXXXXXXX"
data-ad-slot="XXXXXXXXXX"
data-ad-format="auto"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>';
}
add_shortcode('ads', 'addadsense');
2~11行目は return ‘(Adsense のコード)’; となっているので、各自で差し込むための広告用コードを取得して、値を差し替えてください。
なお、function.php への追加する場所はどこでも構いませんが、テーマファイルを直接いじるので、一番後ろに差し込んでおいた方が管理しやすいと思います。
function.php ファイルの一番最後に ?> と記載されていますが、それは php のプログラムの終点を表すので、それよりも前の行に追記するようにしてください。
あと function.php をいじって間違ったコードを書いてしまうと、画面表示時に PHP エラーが出て WordPress 自体が動かなくなってしまいます。
不安な方は必ず FTP でテーマファイルのバックアップを取ることをお忘れなく!そして、もし更新に失敗した場合は、そちらのバックアップファイルから function.php を戻してください。
投稿画面でのショートコードの呼び出し方法
function.php が正しく更新できれば、あとは投稿画面で次のようにショートコードを記載すれば、そこに Adsense 広告が掲載されるようになります。
[ads]
もし、このショートコードの名前を変えたいのであれば、先ほど追加したコードの 13 行目にある次のコードの第一引数を変更してください。
add_shortcode('ads', 'addadsense');
広告ユニットはどれを選べば良い?
上記で紹介したコードをそのまま利用するのであれば、レスポンシブにするのが望ましいです。パソコン用とスマホ用で同一コードが利用でき、画面のサイズに応じた広告が掲載されるので、使い勝手が良いです。
レスポンシブ広告は横長になることを理由に避けている人は、広告コードの修正を検討してください。Adsense のコード内容を下記のように修正することで、正方形もしくは長方形の大きめの広告が表示されるようになります。
// 変更前 data-ad-format="auto" // 変更後 data-ad-format="rectangle"
この修正は Google に認められているレスポンシブ広告の修正方法です。取得したコードに手を加えても、違反になりませんのでご安心ください。
さて、これで満足かと思いきや、レスポンシブ広告ではなく、そもそもパソコンとスマートフォンで広告表示を変えたいと考えている人もいるでしょう。なので、PC用・スマホ用で表示を切り替えるサンプルコードも載せておきます。
パソコンとスマートフォンで広告表示を切り替えるショートコード
function addadsense() { if ( wp_is_mobile() ) { /* スマホ等、モバイル用の広告 */ return '<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <!-- TEST_MOBILE_ADSENSE --> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-XXXXXXXXXXXXXXX" data-ad-slot="XXXXXXXXXX" data-ad-format="auto"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script>'; } else { /* パソコン用の広告 */ return '<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <!-- TEST_PC_ADSENSE --> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-XXXXXXXXXXXXXXX" data-ad-slot="XXXXXXXXXX" data-ad-format="auto"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script>'; } } add_shortcode('ads', 'addadsense');
前半がスマホ用の広告、後半がパソコン用の広告となります。先ほどと同様に、return 値を自身のコードに差し替えて運用してください。
スマートフォンからの接続か、パソコンからの接続かを2行めの wp_is_mobile() で判断していますが、この関数は WordPress の標準関数です。
ショートコードの差し込み方法は前述と同じなので、投稿内に [ads] と記述すれば大丈夫です。これで端末別の表示切り替えも完璧ですね!
以上、WordPress の投稿内で好きな場所に Adsense 広告を掲載させる方法でした。