首页 > 解决方案 > adsbygoogle.push() 错误:availableWidth=0 没有插槽大小

问题描述

我收到了这个错误,我的一些广告没有展示。我的网站使用带有广告插入器插件的 WP。创作者表示与插件无关。所以我挖掘了一些我尝试无济于事的解决方案。

这是我得到的错误:

"TagError: adsbygoogle.push() error: No slot size for availableWidth=0
    at Di (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:6613)
    at Ci (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:5861)
    at Ri (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:11763)
    at Ej (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:25857)
    at Mj (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:28363)
    at Lj (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:28255)
    at Uj (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:33399)
    at https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:17:31821
    at Pd (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:1:20983)
    at Xd (https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js:1:23479)"

似乎只有固定尺寸 (336x280) 的方形广告会返回错误。所有其他广告都具有响应性并正确显示。

这是我尝试过的,但没有成功。

  1. 确保在推送广告时 DOM 已准备就绪。

    $(document).ready(function(){
        (adsbygoogle = window.adsbygoogle || []).push({});
    });
    
  2. 设置超时

    setTimeout(function(){(adsbygoogle = window.adsbygoogle || []).push({})}, 1000);
    
  3. 从所有广告中删除以下代码并将其添加到标题中一次

    <script>
    (adsbygoogle = window.adsbygoogle || []).push({});
    </script>
    
  4. 删除所有广告的数据广告格式

  5. 使用此脚本从代码中删除其他不可见的广告

    $(document).ready(function(){
      var $analyticsOff = $('.adsbygoogle:hidden');
      var $analyticsOn = $('.adsbygoogle:visible');
    
      $analyticsOff.each(function() {
        $(this).remove();
      });
      $analyticsOn.each(function() {
        (adsbygoogle = window.adsbygoogle || []).push({});
      });
    });
    

我做错了什么,因为这些解决方案中的至少一个似乎已经为许多人解决了同样的问题?

有人可以帮我解决这个问题吗?

谢谢,

标签: adsense

解决方案


推荐阅读