You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AMP模式(amp-mode-touch)下移动端AdSense广告无法加载求助

解决AMP帖子中AdSense移动端广告不显示的问题

结合你描述的「桌面端Firebug测试广告正常,移动端触发amp-mode-touch后广告容器消失」的情况,我整理了几个核心排查方向和解决方案:

  • 确认AMP AdSense组件的正确引入
    首先检查页面<head>区域是否加载了官方的AMP广告组件,这是AMP广告渲染的基础,代码必须准确:

    <script async custom-element="amp-ad" src="https://cdn.ampproject.org/v0/amp-ad-0.1.js"></script>
    

    注意不要引入错误的版本或者遗漏async属性,否则移动端可能无法初始化广告组件。

  • 检查广告单元的响应式适配配置
    AMP对移动端广告的尺寸有严格的合规要求,如果你的广告单元是固定大尺寸(比如728x90),在小屏移动端会因为不符合尺寸规则被自动隐藏。建议改用自适应广告单元,或者明确指定移动端兼容的尺寸:

    <amp-ad
      width="320"
      height="100"
      type="adsense"
      data-ad-client="ca-pub-你的客户端ID"
      data-ad-slot="你的广告位ID"
      layout="responsive"
    >
    </amp-ad>
    

    另外一定要排查页面CSS,看看是否存在针对.amp-mode-touch类的错误样式(比如.amp-mode-touch .ad-container { display: none; }),这类规则会直接隐藏广告容器。

  • 排查AdSense移动端广告的库存或审核状态
    有时候AdSense会针对移动端有单独的广告库存分配,或者你的广告单元还没通过移动端的适配审核。可以尝试在AdSense后台切换为「自适应广告单元」,这类单元会根据设备自动调整尺寸和广告内容,适配性更强;同时检查AdSense后台是否有关于移动端广告的警告或限制。

  • 用AMP验证工具排查页面合规性问题
    在你的AMP页面URL后添加#development=1,然后打开移动端浏览器的开发者工具查看控制台输出,AMP的合规性错误(比如组件冲突、属性缺失)会直接导致广告组件不渲染。重点检查data-ad-client和data-ad-slot是否填写正确,有没有拼写错误。

  • 排除移动端缓存与网络问题
    移动端浏览器的缓存可能会导致旧的错误配置被加载,尝试清除浏览器缓存后再测试;同时换用不同的移动端设备或浏览器(比如Chrome移动端、Safari),排除单一设备的兼容性问题。另外确保移动端网络可以正常访问AdSense的广告域名,没有被本地网络屏蔽。

内容的提问来源于stack exchange,提问作者Valen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 08:58:15