如何在所有设备上对齐页面底部的 Google 广告?
How to align Google Ads at the bottom of the page on all devices?
我正在尝试让一些 Google 广告播放得很好。基本上,我们在列表之间展示了一些内联广告:
<div class="listing-ad" id="ad<%row_num%>">
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-1210636681400112"
data-ad-slot="2068176827"
data-ad-format="horizontal"
data-full-width-responsive="true"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
这些工作正常。我们使用以下方法在 requireJS 中加载 Google 脚本:
"google_ads": "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1210636681400112",
我们现在想在页面底部添加一个“锚定”广告。根据文章 ( https://support.google.com/adsense/answer/7478225?hl=en ),我在页面末尾添加了这个:
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-1210636681400112",
enable_page_level_ads: true,
overlays: {bottom: true}
});
当 运行 他们的例子时,广告展示了,但我得到:
{ message: "adsbygoogle.push() error: Only one 'enable_page_level_ads' allowed per page.",
如果我注释掉 enable_page_level_ads: true,
广告仍然显示(但不在底部),然后我收到一条新的错误消息:
message: "adsbygoogle.push() error: All ins elements in the DOM with
class=adsbygoogle already have ads in them.",
我不知道还能尝试什么。我想理想情况下,我想要一个 <ins>
HTML 选项,我可以在其中将 data-ad-overlays="bottom" 作为选项传递(与 <script>
相比)。
我什至尝试通过以下方式传递选项:
(adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-1210636681400112", enable_page_level_ads: true, overlays: { bottom: true } })
还是不开心
这可能吗?我错过了什么愚蠢的东西吗?我觉得我已经追了好几个小时了!
目前不支持底部锚定广告。没有好的方法来强制它们,因为顶部锚点是默认的并且 AdSense 前端不提供切换到底部的方法。您提供的文章已过时,需要修改或更可能删除。但如果你确实想强制使用底部锚点,你可以尝试以下代码片段:
<head>
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-1234567891234567",
enable_page_level_ads: true,
overlays: {bottom: true}
});
</script>
</head>
请注意,网络 属性 id 不再出现在标记中,这造成了差异。尽管通过删除网络 属性 id,您可能会错过其他一些优化。
我正在尝试让一些 Google 广告播放得很好。基本上,我们在列表之间展示了一些内联广告:
<div class="listing-ad" id="ad<%row_num%>">
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-1210636681400112"
data-ad-slot="2068176827"
data-ad-format="horizontal"
data-full-width-responsive="true"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
这些工作正常。我们使用以下方法在 requireJS 中加载 Google 脚本:
"google_ads": "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1210636681400112",
我们现在想在页面底部添加一个“锚定”广告。根据文章 ( https://support.google.com/adsense/answer/7478225?hl=en ),我在页面末尾添加了这个:
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-1210636681400112",
enable_page_level_ads: true,
overlays: {bottom: true}
});
当 运行 他们的例子时,广告展示了,但我得到:
{ message: "adsbygoogle.push() error: Only one 'enable_page_level_ads' allowed per page.",
如果我注释掉 enable_page_level_ads: true,
广告仍然显示(但不在底部),然后我收到一条新的错误消息:
message: "adsbygoogle.push() error: All ins elements in the DOM with class=adsbygoogle already have ads in them.",
我不知道还能尝试什么。我想理想情况下,我想要一个 <ins>
HTML 选项,我可以在其中将 data-ad-overlays="bottom" 作为选项传递(与 <script>
相比)。
我什至尝试通过以下方式传递选项:
(adsbygoogle = window.adsbygoogle || []).push({ google_ad_client: "ca-pub-1210636681400112", enable_page_level_ads: true, overlays: { bottom: true } })
还是不开心
这可能吗?我错过了什么愚蠢的东西吗?我觉得我已经追了好几个小时了!
目前不支持底部锚定广告。没有好的方法来强制它们,因为顶部锚点是默认的并且 AdSense 前端不提供切换到底部的方法。您提供的文章已过时,需要修改或更可能删除。但如果你确实想强制使用底部锚点,你可以尝试以下代码片段:
<head>
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client: "ca-pub-1234567891234567",
enable_page_level_ads: true,
overlays: {bottom: true}
});
</script>
</head>
请注意,网络 属性 id 不再出现在标记中,这造成了差异。尽管通过删除网络 属性 id,您可能会错过其他一些优化。