酒とロック

WordPress、Mac、その他日常で覚えておくべきことを備忘録としてメモしています。

WordPress

404ページでAdsense(アドセンス)を非表示にする方法

2014/08/25

404ページでAdsenseを表示させていると、プログラムポリシーに違反します

ブログ内検索などで、すでに存在しないURLを入力された場合、ユーザーには404エラーの画面が表示されます。しかし、この404ページにAdsense(Googleの広告)を表示させていると、コンテンツ不足によりペナルティを課せられてしまいます。

コンテンツを含まないページ(手続き完了ページ、エラー ページ、離脱ページなど)に広告を掲載することは許可されません。このようなページは、訪問者がドメインから離脱する可能性がある際、場合によっては購入やダウンロードなど、サイト上で特定のアクションを実行した後に表示されます。エラー ページには、そのページにコンテンツがないことをユーザーに知らせる 404 エラー ページなどがあります。この種のページに広告を掲載すると、広告が実際のコンテンツだと誤解されてしまう可能性があるため、広告を掲載されないようお願いいたします。support.google.com

このブログはWordPressの人気テーマであるSTINGER(厳密にはSTINGER FUN)を使用しています。しかし、STINGERをデフォルト設定で使用すると、404ページにもAdsenseが表示されていますので、ペナルティを課せられる危険性をはらんだままです。
404ページにAdsenseが表示されるとペナルティになる

そこで、404ページにAdsenseが表示されないようにカスタマイズしました。
その方法を記録しておきます。

STINGER3の404ページ修正方法

手順1:404.phpを編集する

まず404.phpに表記されているAdsenseを読み込むコードを削除します。
管理画面より「外観」>「テーマ編集」を選択。
画面右のテンプレートから「404テンプレート」を選択します。
404.phpを編集する

上記コードの

部分を削除し、画面下の「ファイルを更新」ボタンを押します。
こんな感じになります。
404ページのAdsenseを削除する
厳密には、

だけを削除してもOKです。でも、divタグを残したままにしておくのは気持ちが悪いですよね。

とにかく、これにより記事部分のアドセンス広告は非表示になりました。
Adsenseは非表示になりました

手順2:sidebar.phpを編集

次にサイドバーに表示されているAdsenseのコードを404ページが表示された時にだけ非表示にするようコードを追加します。
同じく管理画面より「外観」>「テーマ編集」を選択し、画面右のテンプレートから「サイドバー」を選択します。
サイドバー

冒頭1行目から表示しますと上記のようなコードが書かれています。

このうち

の部分を

と変更します。

サイドバーのアドセンスを非表示にする

つまり、こうなります。

サイドバーのカスタマイズ

上記phpは、もしも404ページに属していない場合は…という意味になります。「is_404()」の前の感嘆符(!)は論理演算子の「否定」を表すわけです。つまり、404ページに属していないときはアドセンス広告を表示しなさいよという命令をphpで出しているということになります。

これでAdsenseが表示されなくなりました。
404ページのアドセンスが非表示になりました

ちなみにSTINGER FUNの場合は、404.phpをカスタマイズする必要はありません。
手順2のみ対応すればOKです。

STINGERを使っていない場合のカスタマイズ方法

STINGERを使っていないブログならば、こんなコードを適用してみてもよいでしょう。

まとめ

Adsenseは知らない間に、ポリシー違反してしまうことが多いです。404ページでAdsenseを表示させているブロガーは結構多いようなので、落とし穴的要素です。警告される前に対応しておくべきでしょう。と同時に、PHPの知識を得ないとWordPressブログをカスタマイズするのはハードルが高いことを実感しました。

参考にさせていただいたブログ:lightgauge.net

-WordPress