Joomla的AdSense错误(adsbygoogle.push()错误)

时间:2016-02-11 11:37:48

标签: javascript adsense

未捕获的TagError:adsbygoogle.push()错误:DOM中包含class = adsbygoogle的所有ins元素中都包含广告。

我收到此代码的错误:

<script async src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" type="text/javascript"></script>
<!--  -->
<ins class="ad-div adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-XXXXXXXXXX"
     data-ad-slot="XXXXXXX"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});

</script>  

事情是这个代码在Joomla中有效,但它不适用于Ohanah组件。这只是一个广告,而不是很多。也不应该有任何PHP延迟。但它不起作用

6 个答案:

答案 0 :(得分:2)

据我所知“DOM中的所有ins元素,其中class = adsbygoogle中已包含广告”表示您的网页上的(adsbygoogle = window.adsbygoogle || []).push({})次调用次数超过<ins class="adsbygoogle" ...></ins>标签

通常会在您尝试各种职位时发生,并且(至少一次)您忘记删除整个代码段,但在这种情况下,您正在使用的组件可能会从AdSense代码中删除ins代码。

CTRL + U 查看来源,然后按 F3 搜索adsbygoogle,您应该能够找到问题。

答案 1 :(得分:0)

这就是事情,

当我放置adsbygoogle = window.adsbygoogle ||时[])。推({});再次在模板的末尾,广告有效。但我仍然收到错误消息。但它适用于第二个adsbygoogle = window.adsbygoogle ||之后[])。推({});执行。

答案 2 :(得分:0)

就我而言,组件似乎采用了这两个脚本:

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>

并将它们放在页面的顶部,所以在课堂上......等等几十行。

答案 3 :(得分:0)

这段代码很常见,但这在网页标记中并从页面的其余部分删除此代码,这应该可行

如果您的网页包含多个广告,则会显示此内容。

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>

答案 4 :(得分:0)

唯一名称必须仅包含英文字母(A-Z),数字和下划线,并且第一个字符必须是英文字母。

no =&lt; ins class =&#34; ad-div adsbygoogle&#34; 是=&lt; ins class =&#34; ad_div adsbygoogle&#34;

https://support.google.com/adsense/answer/6307124?hl=tr

答案 5 :(得分:0)

尝试在JS文件中创建类似的功能

function createAndAppendAdsElement(id, adUnitID) {
    var parent = document.getElementById(id);

    var ele = document.createElement('ins');
    ele.style.display = 'block';
    ele.className = 'adsbygoogle';
    ele.setAttribute('data-ad-client', 'ca-pub-XXXXXXXX');
    ele.setAttribute('data-ad-slot', adUnitID);
    ele.setAttribute('data-ad-format', 'auto');
    ele.setAttribute('data-full-width-responsive', 'true');

    parent.appendChild(ele);

    (adsbygoogle = window.adsbygoogle || []).push({});
}

此方法找到具有提供的 ID 的div,然后创建一个 INS 元素并将其附加到该div。

在窗口加载时调用此方法,如下所示:

window.onload = function () {
    createAndAppendAdsElement('elementOne', 'your_ad_unit_number');
    createAndAppendAdsElement('elementTwo', 'your_ad_unit_number');
    createAndAppendAdsElement('elementThree', 'your_ad_unit_number');
    createAndAppendAdsElement('elementFour', 'your_ad_unit_number');
    createAndAppendAdsElement('elementFive', 'your_ad_unit_number');
};