常见的最佳做法

从许多方面将 Google 发布商代码 (GPT) 库集成到您的网站中,与集成任何其他第三方脚本一样。不过,使用 GPT 时,必须考虑一些独特的方面,以确保您充分利用广告空间,同时将对网站性能的影响降到最低。毕竟,快速展示广告至关重要

下面将介绍您在处理自己的集成时应注意的一些最佳做法。

从官方来源加载 GPT

请务必通过官方来源请求 GPT 库:

集成类型 网址
标准 https://securepubads.g.doubleclick.net/tag/js/gpt.js
有限的广告 https://pagead2.googlesyndication.com/tag/js/gpt.js

您不应提供 gpt.js、pubads_impl.js 或其从您自己的服务器加载的任何库,也不应该从非官方来源加载这些版本。

使用本地缓存的 GPT 版本有时可能无法在较新版本的浏览器或操作系统中正常运行,而且可能无法及时使用新功能和改进功能。旧版 GPT 库可能随时停用,如果停止向您的代码投放广告,可能会导致广告收入损失。

这同样适用于 Service Worker。如果您使用 Service Worker 缓存或修改对来自您网站的 HTTP 请求的响应,请在处理对 gpt.js 的请求时使用网络专用策略,以便获取最新版本。

提前加载 GPT

GPT 库 (gpt.js) 仅包含加载广告所需的一小部分代码。大部分代码都包含在单独的文件(如 pubads_impl_XX.js)中,这些文件由 gpt.js 根据需要加载。

通过尽早加载核心 GPT 库,这些依赖脚本也可以提前加载。这样可以避免与提取这些脚本(如果未缓存)相关的任何额外延迟,并可以更快地加载广告。所有这些都有助于缩短“呈现首个广告”指标,从而提高广告的可见度。

适时使用预加载

有时,您可能无法直接控制 GPT 的加载时间和加载方式。例如,在使用代表您加载 GPT 的第三方广告脚本时。在这些情况下,可以预加载针对 gpt.js 的请求。预加载请求会指示浏览器立即下载对网页加载至关重要的指定资源。当指定的素材资源是 JavaScript 文件时,系统会立即提取脚本内容,但会延迟执行,直到需要该脚本为止。

标准集成的预加载请求示例

<link rel="preload" href="https://securepubads.g.doubleclick.net/tag/js/gpt.js" as="script">

针对受限广告集成的预加载请求示例

<link rel="preload" href="https://pagead2.googlesyndication.com/tag/js/gpt.js" as="script">

在预呈现网页上使用 GPT

预渲染会指示浏览器提前下载并呈现用户尚未请求但可能会访问的网页。在预呈现网页上加载时,GPT 库仅在网页已显示时才请求广告。

以静态方式加载 GPT

请避免将 GPT 库动态注入网页或从外部脚本加载 GPT 库。而是在网页的 <head> 中静态加载该库,如 Google 发布商代码使用入门中所述。这样可以防止其他资源延迟加载和加载 GPT 库,进而延迟加载广告。

如需了解详情,请参阅 Lighthouse 发布商广告评估服务静态加载广告脚本审核文档。

异步加载 GPT

在您的脚本代码定义中添加 async 关键字,如 Google 发布商代码使用入门中所述。这会指示浏览器将 GPT 库与其他资源和网页内容并行加载,而不是在脚本加载完成之前阻止执行。

如需了解详情,请参阅 Lighthouse 发布商广告评估服务异步加载广告代码审核文档。

安全地加载 GPT

始终通过 HTTPS 加载 GPT 库,如 Google 发布商代码使用入门中所述。这不仅可为用户提供更好的安全性,还可提高性能。由于 GPT 发出的广告请求始终使用 HTTPS,因此通过 HTTPS 加载库本身可确保浏览器只需为与广告投放相关的所有请求打开 1 个连接。

如需了解详情,请参阅 Lighthouse 发布商广告评估服务通过 HTTPS 加载广告代码从推荐的主机加载 GPT 审核文档。

练习如何实现良好的网页性能

虽然本指南中的最佳实践主要侧重于优化 GPT 集成,但许多其他因素也会影响网页的整体性能。在对网站进行更改(尤其是根据本指南等宽泛建议进行的更改)时,请务必评估这些更改对网页性能方方面面的影响。建议您定期运行 LighthousePublisher Ads Audits for Lighthouse 等工具,以发现和解决性能问题,并针对您的网站找到适当的优化平衡点。