GPT 版本说明

本页记录了 Google 发布商代码 (GPT) 库的正式版更新。您可以定期查看本页面,了解有关新增功能、功能更新、bug 修复、已知问题和功能弃用的公告。

如需接收更新,请将此页面的网址添加到您选择的 Feed 阅读器,或使用 Atom 1.0Feed 图标RSS 2.0Feed 图标 格式的版本说明 Feed 直接链接。

了解发布日期

对 GPT 库的所有更改都会在发布前经过全面测试。此外,还会逐步向用户发布相应版本,以进一步防范意外性能下降。如果在发布过程中的任何时间点发现回归问题,整个版本都可以在面向所有用户之前快速放弃。

因此,发布日期并不准确;整个发布流程可能需要几天到几周的时间才能完成发布。这意味着用户会在不同的时间遇到变化。下面提供的日期反映的是一周开始时,更改完全面向所有用户发布。

2024 年 2 月 19 日当周

添加了 navBar 插页式广告触发器,可在用户与浏览器导航栏互动时展示由 GPT 管理的插页式广告。此功能仅适用于桌面设备。

有关示例,请参阅展示网站插页式广告

2024 年 2 月 12 日所在的周

修复了 SlotRenderEndedEvent.slotContentChanged 始终为 true 的 bug。今后,如果广告位的内容发生变化,此属性只会为 true,否则为 false(例如,广告未填充时)。

2024 年 1 月 29 日所在的周

广告请求发生网络故障时,会触发 googletag.events.SlotRenderEndedEvent 并将 isEmpty 设置为 true,从而模拟无填充。有关如何监听此事件的示例,请参阅广告事件监听器。更改包括在使用 collapseEmptyDivs 时自动收起槽位。

2023 年 12 月 11 日所在的周

2023 年 11 月 13 日所在的周

添加了对 Chrome 预渲染的支持。 如果 GPT 检测到网页处于预呈现状态,就会延迟发出广告请求,直到该网页对用户可见为止。

2023 年 10 月 23 日当周

新增了对可选的网站插页式广告触发器的支持。

GPT 的新变化
对象 googletag.config.InterstitialConfig
媒体资源 googletag.config.SlotSettingsConfig.interstitial
类型 googletag.config.InterstitialTrigger

2023 年 7 月 24 日所在的周

7 月发布的 Chrome 版本发布后,Protected Audience API(以前称为 FLEDGE)即将过渡到正式版。因此,GPT 中与组件竞价相关的功能现在被视为稳定。

2023 年 6 月 19 日当周

更新:从 2023 年 7 月 5 日当天或之后开始,GPT 将不再投放其 JavaScript 库的过时版本,也不会向这些版本投放广告。如需了解详情,请参阅上一公告

通过 www.googletagservices.com/tag/js/gpt.js 投放广告的发布商可以继续这样做。不过,建议您切换到首选网域,因为这样做可能会提高性能,而且将来可能会停止在 www.googletagservices.com 上提供 gpt.js。

2023 年 6 月 6 日当周

自 2023 年 7 月 5 日起,GPT 将不再传送其 JavaScript 库的过时版本。对发布商从官方网址加载 GPT 没有任何影响。 如果发布商投放的是缓存版本的 gpt.js、pubads_impl.js 或他们加载的任何库,则必须更新其网页以使用官方网址。有关详情,请参阅使用入门指南。

2023 年 5 月 22 日当周

现在,系统会自动移除提供给 googletag.defineSlot()SizeMappingBuilder.addSize() 的负大小值和零大小值(因为它们无效)。因此,提供此类无效值的现有集成的发布商控制台消息可能会有所增加。不过,这不会对现有的有效广告请求产生任何影响。

2023 年 5 月 18 日所在的周

现在,需在 GPT 的早期执行过程中完成通过 GPT 安装安全信号出价方脚本的操作。这可能会使所有广告请求的信号覆盖率提高。

2023 年 5 月 1 日当周

修复了刷新多尺寸锚定广告位时广告素材可能被截断的 bug。

2023 年 3 月 27 日当周

对于不能原生支持 Intersection Observer API 的浏览器,GPT 不再支持基于可见度的功能。请注意,所有受支持的浏览器都原生支持此 API。

方法或事件
googletag.events.ImpressionViewableEvent
googletag.events.SlotVisibilityChangedEvent
googletag.pubads().enableLazyLoad()

2023 年 2 月 6 日当周

2023 年 1 月 30 日所在的周

Service.addEventListener() 的行为已更改,以便在事件发生时,所有关联的监听器会在处理后续事件之前执行。在此变更之前,同一广告位的槽渲染开始和结束事件监听器可能会不按顺序执行。

2022 年 8 月 15 日当周

Service.removeEventListener() 的返回值类型已从 boolean 更改为 void

2022 年 7 月 25 日所在的周

添加了对 FLEDGE 组件竞价的实验性支持,以便通过多个卖方参与 FLEDGE 的早期测试。

GPT 的新变化
方法 Slot.setConfig()
对象 ComponentAuctionConfig
SlotSettingsConfig

2022 年 7 月 18 日所在的周

ContentService API 已弃用。现在,除了记录警告之外,调用 googletag.content().setContent 没有任何作用。googletag.content 属性很快就会被彻底移除;之后,尝试调用该属性将抛出异常。请改为使用浏览器的内置 DOM API 直接向 div 元素添加内容。

2022 年 5 月 23 日当周

新增了对配置广告请求流量来源的支持。

为流量来源提供 GPT 支持
枚举 TrafficSource.ORGANIC
TrafficSource.PURCHASED
媒体资源 PrivacySettingsConfig.trafficSource

2022 年 3 月 7 日当周

适合在网站中展示的激励广告已发布。如需了解详情,请访问 Ad Manager 帮助中心

针对适合在网站中展示的激励广告的 GPT 支持
枚举 OutOfPageFormat.REWARDED
事件 RewardedSlotClosedEvent
事件 RewardedSlotGrantedEvent
事件 RewardedSlotReadyEvent
对象 RewardedPayload

2022 年 2 月 28 日所在的周

CommandArray.push 现在会将提供的函数显式绑定到 globalThis,而不是它自己的 arguments 对象。

2021 年 12 月 8 日所在的周

枚举现在还会公开值到键的反向映射,以便匹配 TypeScript 枚举的行为。采用枚举值的 API 将保持不变,不应使用这些新的反向映射。

2021 年 8 月 9 日当周

添加了 removeEventListener 方法。

使用相同的 eventType 和回调函数实例多次调用 addEventListener 现在是一项空操作。换句话说,如果针对同一事件类型注册了单个回调函数实例 n 次,则该回调函数实例仅在事件发生时执行一次,而不是 n 次。

2021 年 7 月 29 日当周

GPT 的可见度事件 ImpressionViewableEventSlotVisibilityChangedEvent 现在将继续针对较长的网页会话触发。以前,它们会在网页加载 1 小时后关停。

2021 年 5 月 3 日当周

GPT 不再在提取广告之前为广告位设置空间。这项变更可减少未使用 CSS 预留空间的网站上的累积布局偏移 (CLS)。 为了进一步减少您网站上的 CLS,我们建议您使用 CSS 为广告预留非零区域。了解详情

2021 年 3 月 22 日所在的周

更新了 enableLazyLoad() 的行为,以便同时延迟呈现后台标签页上非首屏槽位。

2021 年 2 月 23 日当周

现在,可以在 displayrefresh 之前随时调用 googletag.pubads().setSlot.set 方法。以前,set 仅在 googletag.enableServices 之前调用时才适用。

2021 年 2 月 16 日所在的周

现在可以随时调用 googletag.pubads().setPublisherProvidedId API。以前,此方法仅在 googletag.enableServices 之前调用时才有效。

2021 年 1 月 4 日所在的周

现在可能会反复调用 googletag.pubads().collapseEmptyDivs API 来更改设置。之前的重复调用会被忽略。

2020 年 10 月 12 日所在的周

发布了网站插页式广告公开 Beta 版,详见帮助中心

2020 年 8 月 31 日所在的周

废弃了 definePassback()defineOutOfPagePassback()。如需了解如何正确创建回传,请参阅回传文档

2020 年 6 月 15 日所在的周

更新了 enableLazyLoad() 的行为,以与 collapseEmptyDivs(true) 兼容。

2020 年 5 月 25 日所在的周

GPT 将不再支持发布商设置的精确 GPS 位置。具体而言,googletag.pubads().setLocation() 将不再支持纬度、经度或半径参数,而是采用自由格式的地址。

2020 年 4 月 27 日所在的周

GPT 呈现逻辑不再模块化处理为单独的文件。这意味着 GPT 在执行时提取的文件会减少,从而略微缩短延迟时间,但对用户带宽没有净影响。

现在,当某个请求在 GPT 中触发(通过调用 googletag.display()googletag.pubads().refresh())时,我们会在内部冻结所有发布商提供的状态,这样在相应请求发送之前便无法更改其状态。因此,当某个请求触发时,系统只会将在该时间点之前添加的状态用于该请求。在此之后修改的任何状态将仅应用于以下请求。

2019 年 11 月 11 日所在的周

现在,我们推出了一个新的推荐代码段,供您创建 GPT 回传代码。不建议使用 definePassback()defineOutOfPagePassback(),因为这些函数会同步运行,并且可能会被某些浏览器阻止。了解详情

添加了 Slot.updateTargetingFromMap() 方法。

添加了 PubAdsService.setPrivacySettings() 作为启用隐私设置的新方法。将来会在此处提供其他设置。

2019 年 3 月 25 日当周

现在,Pubads 服务在调用 googletag.enableServices() 后可立即完全正常运行,而不是异步初始化。这意味着,现在调用 googletag.enableServices() 后,googletag.pubadsReady 一定会为 true。应该不再需要轮询来检查 googletag.pubadsReady 的值。

2019 年 2 月 4 日所在的周

更新了 enableLazyLoad() 的行为,以允许在调用 enableServices() 后更改延迟加载配置,并在每个槽位显示时冻结延迟加载配置。

2019 年 1 月 21 日所在的周

添加了新的受支持事件 SlotResponseReceived,该事件会在针对广告位收到广告响应时触发。

2019 年 1 月 14 日所在的周

添加了新的受支持事件 SlotRequestedEvent,该事件会在针对广告位发出广告请求时触发。

2018 年 8 月 27 日所在的周

修改了 googletag.display(),以接受 googletag.Slot 作为参数。

2018 年 8 月 6 日所在的周

添加了 googletag.PubAdsService.enableLazyLoad(),用于在 GPT 中延迟加载广告。

2018 年 6 月 18 日所在的周

修复了导致 googletag.events.SlotOnloadEvent 无法触发的 bug。

2018 年 4 月 30 日所在的周

添加了 googletag.PubAdsService.setTagForUnderAgeOfConsent(),用于控制向未达到同意年龄的用户投放的广告,并添加了 googletag.PassbackSlot.setTagForUnderAgeOfConsent(),用于将回传广告位标记为来自未达到同意年龄的用户。

2018 年 4 月 23 日所在的周

添加了用于控制广告个性化的 googletag.PubAdsService.setRequestNonPersonalizedAds()

2018 年 3 月 12 日所在的周

回滚了一项更改,即在刷新之前停止移除相应广告位内的现有内容(如果这些内容不是由 GPT 放置的)。内容现在将被清除。

2018 年 2 月 19 日所在的周

使用异步呈现模式时:尽可能为所有广告请求使用采用 HTTP GET 方法的 XMLHttpRequest 请求广告,但不能超过 8,192 个字符。以前,HTTP POST 方法用于请求超出 4,096 个字符的广告请求(不超过 8,192 个字符)。

在刷新之前停止移除槽位内的现有内容(如果这些内容不是通过 GPT 放置的)。 此备注不正确;请参阅 2018 年 3 月 12 日当周的相关条目

2018 年 1 月 8 日所在的周

支持将 [..., ['fluid'], ...] 的备用语法用作多尺寸数组中的 NamedSized。之前,只有 [..., 'fluid', ...] 被视为有效。

2017 年 7 月 10 日所在的周

googleTag.ResponseInformation 中移除了 labelIds 字段。

2017 年 6 月 5 日当周

修改了 googletag.display()googletag.pubads().display,以接受 div 元素和 div ID。这样便可在 shadow DOM 中的 div 内渲染槽位。

2017 年 2 月 27 日所在的周

2016 年 11 月 7 日所在的周

在 Service 上发布了 getSlots() API,用于检索与服务关联的槽列表。

2016 年 10 月 17 日所在的周

修改了 Slot.clearTargeting()PubAdsService.clearTargeting(),以接受可选的键参数。

2016 年 9 月 5 日所在的周

googletag.cmd.push() 中捕获的错误不再不可见,并且会输出到控制台。

2016 年 8 月 8 日所在的周

发布了 SlotOnloadEvent API,用于监听广告素材完成加载。

2016 年 7 月 25 日所在的周

在 PubAdsService 上发布了 getTargeting()getTargetingKeys() API,用于检索自定义的服务级定位参数。

2016 年 6 月 20 日所在的周

发布了 openConsole() API,无需刷新网页即可打开 Google 发布商控制台。

2016 年 6 月 6 日所在的周

发布了用于检索自定义定位参数的 getTargeting()getTargetingKeys() API。

添加了以下配置选项,其中 Safeframe 应允许通过推送内容展开:allowPushExpansion

2016 年 5 月 16 日所在的周

在多尺寸广告请求中支持自适应尺寸

2016 年 4 月 18 日所在的周

发布了 getResponseInformation API,该 API 可返回广告位的广告响应信息。

发布了 setAdIframeTitle API,此 API 可将“输入”设置为随后创建的所有广告容器 iframe 的标题。

2016 年 4 月 4 日所在的周

HTTP GET 广告请求的长度上限增加到了 4096 个字符。

2016 年 3 月 28 日所在的周

添加了以下配置选项,其中 Safeframe 应允许通过叠加内容进行展开:allowOverlayExpansion

添加以下配置选项,其中 SafeFrame 应使用 HTML5 沙盒属性来阻止顶级导航:sandbox

2016 年 2 月 22 日所在的周

添加了为广告容器 iframe 设置标题的功能:setAdIframeTitle()

添加用于在网页级和广告位级配置 SafeFrame 属性的 API:setSafeFrameConfig()

2016 年 2 月 15 日所在的周

添加了销毁槽并重复使用 div 的功能:destroySlots()

添加了以下 API,以针对具有精细控制功能的广告位强制使用安全框:setForceSafeFrame()

2015 年 12 月 7 日所在的周

添加槽可见性事件 (SlotVisibilityChangedEvent)。

2015 年 10 月 26 日所在的周

添加展示可见度 (ImpressionViewableEvent)。

更新 JSON 映射中的回传定位条件 (Passback.updateTargetingFromMap())。

支持适用于回传广告位的 set()get() AdSense 属性 page_url

2015 年 10 月 12 日所在的周

支持页外回传

2015 年 8 月 31 日所在的周

将 GPT 架构重构为精简加载程序和更大的实现方案。

在 GPT 中支持自适应尺寸