ブログを開設してから長い間、「Uncaught TagError: adsbygoogle.push() error: All ins elements in the DOM with class=adsbygoogle already have ads in them.」というエラーとともに広告が表示されない問題に悩まされていましたが、どんなにグーグル検索しても解決方法が見つからなかったのですが、ふと私が持っているウェブ知識で解決することができたので、共有しようと思います。
AdSenseで広告ユニットを作成し、コードを見ると以下のような形式で提供されるでしょう。
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-{あなたのAdSense番号}"
crossorigin="anonymous"></script>
<ins class="adsbygoogle"
style="display:block"
data-ad-format="fluid"
data-ad-layout-key="..."
data-ad-client="..."
data-ad-slot="..."></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
いろいろな広告を作成して必要な場所にペーストしたのですが、問題は以下のコードが重複しているということです。
<script async='async' crossorigin='anonymous' src='https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-{あなたのAdSense番号}'/>
同じ内容のjsファイルを取得する動作なので、その部分を削除してheadに一度だけ挿入すると、綺麗に解決しました。
同じ問題で苦しんでいる人がいるなら、この方法を試してみることをお勧めします。
0 개의 댓글:
Post a Comment