【WordPress】特定のカテゴリ・タグだけGoogle Adsenseを非表示にする【ポリシー違反対策】
先月、結構な数のブログで「Google Adsenseの広告配信が停止された」と祭りになっていました。
もう落ち着いたのか最近は見かけませんが、やはり対策はしておいた方が良さそうです。
スポンサーリンク
Google Adsenseの広告配信が停止される原因
何がいけなかったのかですが、ハッキリとは分かっていません。
多分これだろうと言われているのが、以下の理由。
- 詳細なアクセス情報が載っている「Google Analyticsの管理画面のスクリーンショット」を掲載。
- Google Adsenseと他の広告の収益をそれぞれ比較できるように分けて報告。
これらを同時にやっちゃうとほぼ確実にアウトになるっぽいです。
要するに、アクセス数や収益の月次報告とかそういうページですね。
ポリシーは結構しっかりチェックしてるんですが、何が悪いのか分からない…。
違反になる明確な判断基準はないそうで、Googleのポリシーチームが人力で総合的に判断してるようです。
日本語の動画で親切に説明してくれてるので是非見てみることをオススメします。
西野さんが可愛い過ぎたので他のも全部見ました(^q^)
ポリシー違反の対策
とりあえず、原因と思われるものは分かったので、月次報告に「Google Adsense」を表示させないようにします。
記事ごとに指定
全部の記事IDを調べて、「この記事IDは別のものを表示にする」と指定することで対応することが可能です。
記事IDを判定する方法としてis_single()があり以下の様に指示できます。
if (is_single(10)) { // 10は月次報告の記事ID // Google Adsense以外の広告コード等 } else if (is_single(array(52, 76)) { // 52, 76は他にポリシー違反に該当する記事ID // Google Adsense以外の広告コード等 } else { // Google Adsenseコード }
これで目的は達成できます。条件の記事IDは配列arrayで複数渡すことも可能です。
とは言え新しい記事を書く度に更新しないといけないので、面倒くさく、現実的ではありません。
なので、カテゴリーやタグを月次報告や、ポリシー違反に該当しそうな記事に割り当てます。
後は、同じように分岐の指示をします。
カテゴリーごとに指定
カテゴリーに属しているかの判定は、in_category()を使います。
if (in_category(10)) { // 10は月次報告のカテゴリ-ID // Google Adsense以外の広告コード等 } else if (in_category(array('youtube', 'movie')) { // 'youtube', 'movie'はポリシー違反に該当するかもしれないカテゴリーのスラッグ // Google Adsense以外の広告コード等 } else { // Google Adsenseコード }
カテゴリーIDの確認や、スラッグの確認・変更は、管理画面の「投稿」→「カテゴリ・タグ」のページで行えます。
タグごとに指定
タグには、has_tag()を使用します。
if (has_tag(10)) { // 10は月次報告のタグID // Google Adsense以外の広告コード等 } else if (has_tag(array('youtube', 'movie')) { // 'youtube', 'movie'はポリシー違反に該当するかもしれないタグのスラッグ // Google Adsense以外の広告コード等 } else { // Google Adsenseコード }
終わりに
これで、通常のページには「Google Adsense」を掲載しつつ、月次報告が出来るようになるはずです!
いやー「Google Adsense」の配信停止は怖いですね…。
現状「Google Adsense」からしか収入ないので、リスク分散しないと!と考えています。
今回の内容で、カテゴリー・タグごとに広告の内容を分岐出来るようになったので、自前で広告の最適化が図れるようになりました。
今後、広告表示の最適化についても力を入れていこうと思います。
それでは。