Googleアドセンスの自動広告で特定要素のところだけ非表示にする方法
googleアドセンスで引用文 = blockquoteに自動広告が表示され、それがいやだったので、特定要素だけ自動広告を非表示にしたいと思いました。
cssで自動広告を消すのは規約違反
自動広告を非表示にする方法を調べたらcssで自動広告を消す方法が紹介されました。しかし自動広告をcssで消すのは規約違反でした
display:none例を使用して広告ユニットを非表示にします (レスポンシブ広告ユニットをhave implemented場合を除く)
AdSense 広告コードを修正する - Google AdSense ヘルプ
公式でdiplay noneによる広告の日表示が禁止されているのでやめておいたほうがいいでしょう。
javascriptで自動広告を非表示にする。
javascriptの自動広告コードのあとに以下のスクリプトコードを追加することによって自動広告を非表示にできるようです。
var ad = document.querySelector(".google-auto-placed"); ad.innerHTML="";
このコードはスタックオーバーフローで紹介されていますが、わたしは結局ためしませんでした。 javascript - Prevent AdSense Auto Ad from showing ad in specific area - Stack Overflow
googleの公式をみるとjavascriptでの改変は禁止されていないようでしたが、javascriptで消すというのもなんだか本末転倒のような気もします。
できればアドセンスの管理画面で非表示にする部分を選択する
自動広告の非表示はアドセンスの管理画面で「自動広告の編集」のところでプレビューを表示して非表示にしたい広告のゴミ箱マークをクリックすることで非表示にできるようです。プレビューで表示される広告は「自動広告の例」として表示されています。
ただ先ほど書いたプレビューでの広告非表示方法はそれほど自由度が高くないようでわたしの場合はwordpressサイトのトップページのみしか操作できなかったので完全に広告を制御したい場合は従来の広告ユニットを使うほか方法はないと思われます。
自動広告は最適な位置に表示される
そもそも自動広告はgoogle公式によると「ページの最適な位置に自動で広告を表示する」ものmたいなので気になる場所に自動広告が表示されても、それは”最適である”ともいえます。とはいえこれが言いきれるかというと個人の解釈にゆだねられそうですがわたしはもう気にしないことにしました。
そのため、自動広告をcssやjavascriptであえて制御する必要はないでしょう。