键值对可用于定位广告(比定位广告单元更精细)。了解详情 键值对。
对于每个广告请求,您可以传递一个或多个键,每个键包含一个或多个
相关的值。系统将根据定位选项评估这些键值对
在 Ad Manager 中的订单项级配置。例如,如果
您传递了自定义键值age=18-34
,则定位到该年龄段的订单项
年龄在 18-34 岁之间的客户都符合投放条件(假设所有其他条件均符合)。
设置定位条件
您可以指定键值对,以同时在广告位和 设置网页级代码。
- 广告位级
可让您为网页上的各个广告位设置键值对。
通过广告位级定位,您可以按每个广告位配置定位。 当同一个网页上的各个广告位都需要 但在定位条件相同的情况下 键值对会应用到所有广告位使用 Slot.setTargeting(),以便利用广告位级 如下例所示。
- 页面级
允许您为网页上的所有广告位设置键值对。
网页级定位可确保所有广告位具有相同的一组 键值对。在某些情况下,这可能会减少 配置定位条件。使用 googletag.pubads().setTargeting() 可以 网页级定位条件,如下例所示。
<head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="description" content="Use key-value targeting to control the ads eligible to serve to specific ad slots." /> <title>Key-value targeting</title> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" crossorigin="anonymous" ></script> <script> window.googletag = window.googletag || { cmd: [] }; // GPT slots let adSlots = []; googletag.cmd.push(() => { // Configure slot-level targeting. adSlots[0] = googletag .defineSlot("/6355419/Travel/Asia", [728, 90], "banner-ad-1") .addService(googletag.pubads()) .setTargeting("color", "red") .setTargeting("position", "atf"); adSlots[1] = googletag .defineSlot("/6355419/Travel/Asia", [728, 90], "banner-ad-2") .addService(googletag.pubads()) .setTargeting("position", "btf"); // Configure page-level targeting. googletag.pubads().setTargeting("interests", "basketball"); // Enable SRA and services. googletag.pubads().enableSingleRequest(); googletag.enableServices(); }); </script> </head>
在本示例中,定义了两个广告位,分别指定
/6355419/Travel/Asia
,广告尺寸为 728x90
。那么键值对定位条件就是
以进一步限制和区分可在每个
。
如果同时使用广告位级和网页级定位,则键值对会合并 只有符合所有条件的广告才有资格投放到指定广告位。 在此示例中,每个槽的有效标记如下:
广告位 | 有效定位 |
---|---|
1 | color=red AND position=atf AND interests=basketball |
2 | position=btf AND interests=basketball |
定位多个键或值
在前面的示例中,广告位级和网页级定位的组合为 用于为单个广告位定义多个定位键。以下是一些 实现相同有效定位的其他方法:
仅限广告位级定位
在本例中,每个广告位都重复的共享键值对。
// Slot-level targeting with multiple keys.
adSlots[0] = googletag
.defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-1')
.addService(googletag.pubads())
.setTargeting('color', 'red')
.setTargeting('position', 'atf')
.setTargeting('interests', 'basketball');
adSlots[1] = googletag
.defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-2')
.addService(googletag.pubads())
.setTargeting('position', 'btf')
.setTargeting('interests', 'basketball');
网页级默认定位条件
在本例中,默认定位在网页级设定,并被替换 。
// Page-level default targeting.
googletag.pubads().setTargeting('interests', 'basketball')
.setTargeting('position', 'btf');
// Slot-level targeting overrides.
adSlots[0] = googletag
.defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-1')
.addService(googletag.pubads())
.setTargeting('color', 'red')
.setTargeting('position', 'atf');
adSlots[1] = googletag
.defineSlot('/6355419/Travel/Asia', [728, 90], 'banner-ad-2')
.addService(googletag.pubads());
还可以为单个键定位多个值,方法是提供
调用 setTargeting()
时的值数组:
// Page-level targeting with multiple values for a single key.
googletag.pubads().setTargeting('interests', ['baseball', 'basketball']);
清除定位条件
设置好定位后,每
所有广告请求的计算时间但在某些情况下
定位条件会随时间而变化虽然 setTargeting()
可以
添加和覆盖键值,但是无法以这种方式删除它们。
为此,请使用 Slot.clearTargeting() 或
googletag.pubads().clearTargeting() 必须是
。
// Step 0, define slot- and page-level targeting. adSlots[0] = googletag .defineSlot("/6355419/Travel/Asia", [728, 90], "banner-ad-1") .addService(googletag.pubads()) .setTargeting("color", "red") .setTargeting("position", "atf"); googletag.pubads().setTargeting("interests", "basketball"); // Step 1, clear slot-level color targeting. adSlots[0].clearTargeting("color"); // Step 2, clear all page-level targeting. googletag.pubads().clearTargeting();
当使用特定键(在clearTargeting()
广告位级或网页级),则仅移除该键。如果未指定键,
该级别的定位条件就会被移除
在前面的示例中,每个广告位之后,广告位的有效定位 步骤是:
步骤 | 有效定位 |
---|---|
0 | color=red AND position=atf AND interests=basketball |
1 | position=atf AND interests=basketball |
2 | position=atf |