要素の有無で判別する方法と、高さでする方法があります。
どちらでもお好みで。
1、広告ブロッカー判別コード(要素の有無で判別)
<div id="ad">
<アドセンスのコード>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
if(document.getElementById('google_esf') === null) {
var doc0= document.getElementById("ad");
doc0.innerHTML= '違う広告のコード';
}
});
</script>
アドセンスで使われるDIV要素のID「google_esf」が無ければ、というifです。
広告の種類によってここは変更してください。
何かしら特定のIDがあるはずです。
アドセンスが入っているDIVの内部を「違う広告のコード」に全て書き換えます。
2、広告ブロッカー判別コード(要素の高さで判別)
<div id="ad">
<アドセンスのコード>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const adspace = document.querySelector('#ad').clientHeight;
if(adspace == 0){
var doc0= document.getElementById("ad");
doc0.innerHTML= '違う広告のコード';
}
});
</script>
要素の高さが0なら、というifです。
広告ブロッカーは要素ごと削除するため、高さは0になります。
しかし、広告会社の種類によっては要素の大きさはそのままに画像だけ表示されないものもあります。
その場合は最初のIDで判別する方法が良いです。
もしくはAmazonなどの広告を入れて、それの有無で判別したり。
これはやらないと損なので、絶対にやりましょう。