借助 Google 发布商代码 (GPT) 库,您可以生成具备“回传”功能的广告代码。只要发送至第三方的广告请求最终应由在您自己的 Google Ad Manager 广告联盟中投放管理的广告填充时,就可以使用这样的代码。
使用场景
补余订单项或后备订单项
当第三方服务器没有可以投放的广告,或相关广告不符合与第三方商定的最低每千次展示费用/底价要求时,即可使用回传代码。在这种情况下,第三方服务器将改为投放 GPT 回传代码,该代码会返回您自己的 Ad Manager 广告联盟中的自家广告或其他补余广告。
工作流示例
如果第三方广告联盟 A 要向 Ad Manager 发布商 B 返回广告,但没有符合条件的广告,则广告联盟 A 可以投放回传代码。然后,该回传代码会将符合定位条件的广告从 Ad Manager 广告服务器返回给发布商 B。
- 网页使用 Ad Manager 广告代码向 Ad Manager 广告服务器发出调用请求。
- Ad Manager 广告服务器返回包含第三方广告代码的广告。
- 第三方广告代码会调用第三方广告服务器以获取广告。
- 第三方广告服务器没有符合条件的广告,因此返回回传广告代码。
- 回传广告代码向 Ad Manager 发出调用请求,以投放与指定的定位条件匹配的广告。
- Ad Manager 广告服务器返回与回传广告代码定位条件匹配的广告。
在其他发布商网站上投放广告
回传代码可用于在其他发布商的网站上投放来自 Ad Manager 广告网络的广告。在这种情况下,GPT 回传代码将由其他发布商进行广告投放管理,并会返回您自己的 Ad Manager 广告联盟中的广告。
工作流示例
如果 Ad Manager 广告资源网 A 要向发布商 B 投放广告,Ad Manager 广告资源网 A 会向发布商 B 发送回传代码。 发布商 B 会投放回传代码,该代码最终会返回 Ad Manager 广告联盟 A 中的广告。
- 回传广告代码向 Ad Manager 发出调用请求,以投放与指定的定位条件匹配的广告。
- Ad Manager 服务器返回与回传广告代码定位条件匹配的广告。
投放视频广告
如要创建视频广告回传代码,请使用标准视频广告代码从第三方回传到 Ad Manager。
您可以手动构建此代码,也可以使用 Ad Manager 视频广告代码生成器构建此代码。
构建回传代码
您可以使用用于构建常规 GPT 广告代码的 API 构建回传代码。不过,回传代码必须在 iframe
中呈现,以防止它们继承发布商网站上任何其他有效 GPT 实例中的网页级设置。
下面是一个基本回传代码示例。请注意,此 fragment 旨在渲染在 iframe
中。如需在实践中了解这一点,您可以在 Glitch 上试用此示例的实时演示。
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" async></script>
<div id="gpt-passback">
<script>
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.defineSlot('/6355419/Travel/Europe', [728, 90], 'gpt-passback')
.addService(googletag.pubads());
googletag.enableServices();
googletag.display('gpt-passback');
});
</script>
</div>
配置回传代码
回传代码支持 GPT 代码提供的常规功能,例如键值对定位指南和代码示例中介绍的功能。下文介绍了仅适用于回传代码的功能,或在回传上下文中使用时需要特殊配置的功能。
启用点击跟踪
如需向回传代码添加点击跟踪,可以将点击后到达网址宏附加到代码中,如下例所示。此点击后到达网址宏会动态添加为 Ad Manager 广告服务器上存储的点击后到达网址的前缀。
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" async></script>
<div id="gpt-passback">
<script>
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.defineSlot('/6355419/Travel/Europe', [728, 90], 'gpt-passback')
.addService(googletag.pubads())
.setClickUrl('%%CLICK_URL_UNESC%%');
googletag.enableServices();
googletag.display('gpt-passback');
});
</script>
</div>
继承隐私设置
由于回传代码是在 iframe 中呈现的,因此不会自动继承在网页一级配置的隐私设置。当回传用于将广告从一个 Ad Manager 发布商投放给另一个发布商时,可以使用 TFCD 宏在回传广告请求中添加当前的网页级面向儿童的内容设置。
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" async></script>
<div id="gpt-passback">
<script>
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.defineSlot('/6355419/Travel/Europe', [728, 90], 'gpt-passback')
.addService(googletag.pubads())
googletag.pubads()
.setPrivacySettings({childDirectedTreatment: Boolean('%%TFCD%%')});
googletag.enableServices();
googletag.display('gpt-passback');
});
</script>
</div>
管理子发布商的广告资源
多客户管理 (MCM) 是 Ad Manager 的一项功能,可授予对其他发布商委托给您账号的广告请求的访问权限。如需了解详情,请参阅多客户管理简介。
如需使用 MCM,必须更新父级发布商的回传代码,使其包含子发布商的 Ad Manager 广告资源网代码。这样一来,Ad Manager 便可识别子发布商广告联盟,并有助于确保广告素材正确投放。
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" async></script>
<div id="gpt-passback">
<script>
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.defineSlot('/6355419,1234/Travel/Europe', [728, 90], 'gpt-passback')
.addService(googletag.pubads())
googletag.enableServices();
googletag.display('gpt-passback');
});
</script>
</div>
在上面的示例中,6355419
是父级发布商的 Ad Manager 广告资源网代码,1234
是子级发布商的广告资源网代码。
指定网页网址
由于回传代码是在 iframe 中呈现的,GPT 可能无法确定投放代码的网页的网址。如果您使用 Ad Exchange 或 AdSense 来填充回传展示,则在没有网页网址的情况下,这些系统无法将网页的相关背景信息发送给买方。这会导致填充率或每千次展示费用降低(在某些情况下,还会导致广告请求遭拒)。
为避免这种情况,您可以使用 PATTERN 宏向第三方广告联盟或广告服务器提供网页网址信息。然后,您可以将这些信息作为 page_url
属性添加到回传代码中。
工作流示例
- 用户访问 example.com/mypage.html。网页请求广告。
-
Ad Manager 投放第三方广告联盟代码,并使用
%%PATTERN:url%%
宏插入 URL。 - 第三方广告联盟收到广告请求,但无法进行填充。
-
第三方将 Ad Manager 回传代码投放到自己的 iframe,但使用广告请求中提供的网址值附加
.set("page_url", "URL")
。 - Ad Manager 通过此网页网址收到了广告请求。Ad Exchange 和 AdSense 可以向买方发送背景信息。
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" async></script>
<div id="gpt-passback">
<script>
window.googletag = window.googletag || {cmd: []};
googletag.cmd.push(function() {
googletag.defineSlot('/6355419/Travel/Europe', [728, 90], 'gpt-passback')
.addService(googletag.pubads());
googletag.pubads().set('page_url', 'URL ');
googletag.enableServices();
googletag.display('gpt-passback');
});
</script>
</div>