ブログを開設してから長い間、「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