通过为 GDPR 合规性实施同意弹出窗口来避免处罚。 MonetizeMore 发布商的透明度和同意框架 2.0 (TCF2.0) 合规指南
已发表: 2020-10-12这篇文章最近更新于 2023 年 2 月 2 日
2020 年 10 月 15 日生效——广告提供商将支持 TCF2.0 计划,并可能停止在未检测到同意信号的网站上为欧盟用户出价。 因此,所有发布商都必须符合 TCF2.0 标准,否则预计广告收入会下降。 在此处阅读 Google 的帮助中心文章。
在此处阅读我们的常见问题解答:
https://www.monetizemore.com/blog/frequently-asked-questions-gdpr-and-eprivacy-directive/
如果您有任何硬编码代码,例如 AdSense、Ad Exchange、GAM 标头和正文或 Google Analytics,欧盟用户必须明确表示同意,然后才能提供这些收集个人信息的任何标签。
如果您使用 MonetizeMore,这里有一个关于如何将您的页面代码转换为符合 TCF2.0 标准的快速指南:
任何与广告相关的内容都会进入pg.atq函数。
Google Analytics、Facebook Pixels 或任何用户跟踪代码都需要在所有情况下进入pg.acq函数,无论发布者是否运行 TC。
如果您仍然有此标记,请检查您的源代码:
<script src =”https://cdn.pubguru.com/pg.js” />
如果是,请禁用或删除它! 然后根据您正在运行的页面代码继续执行以下操作:
AdSense
示例原始代码(不符合 TCF2.0 标准):
<script async src=”https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js”</script>
<!– adsense_320x50 –>
<ins class=”adsbygoogle”
style=”display:inline-block;width:320px;height:50px”
data-ad-client=”ca-pub-12345″
data-ad-slot=”123″></ins>
<脚本>
(adsbygoogle = window.adsbygoogle || []).push({});
</脚本>
TCF2.0 兼容代码:
可以放在页眉或正文中(将由 MonetizeMore 提供给您):
<script src=”//m2d.m2.ai/PUBDOMAIN.js” 异步></script>
身体:
<ins class=”adsbygoogle”
style=”display:inline-block;width:320px;height:50px”
data-ad-client=”ca-pub-12345″
data-ad-slot=”123″></ins>
代码中发生了什么变化以使其合规?
AdSense 自动广告
示例原始代码(不符合 TCF2.0 标准):
<script async src=”//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js”></script>
<脚本类型=“文本/javascript”>
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client:“ca-pub-XXXXXXXXXXXXXXX”,
enable_page_level_ads : true
});
</脚本>
TCF2.0 兼容代码:
<脚本类型=“文本/javascript”>
window.pg=window.pg||[];pg.atq=pg.atq||[];
pg.atq.push(函数() {
// Google Adsense 自动广告
(adsbygoogle = window.adsbygoogle || []).push({
google_ad_client:“ca-pub-XXXXXXXXXXXXXXXX”,
enable_page_level_ads: true
});
});
</脚本>
<script src=”//m2d.m2.ai/PUBDOMAIN.js” 异步></script>
代码中发生了什么变化以使其合规?
广告交易
示例原始代码(不符合 TCF2.0 标准):
<脚本类型=“文本/javascript”>
google_ad_client = “ca-pub-12345”;
/* sample.com_desktop_300X250 */
google_ad_slot = “123”;
google_ad_width = 300;
google_ad_height = 250;
</脚本>
<script type=”text/javascript” src=”//pagead2.googlesyndication.com/pagead/show_ads.js”>
</脚本>
TCF2.0 兼容代码:
可以放在页眉或正文中(将由 MonetizeMore 提供给您):
<script src=”//m2d.m2.ai/PUBDOMAIN.js” 异步></script>
身体:
<ins class=”adsbygoogle”
style=”display:inline-block;width:300px;height:250px”
data-ad-client=”ca-pub-12345″
data-ad-slot=”123″></ins>
代码中发生了什么变化以使其合规?
谷歌广告管理系统
示例原始代码(不符合 TCF2.0 标准):
头:
<脚本>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
googletag.cmd.push(函数() {
googletag.defineSlot('/55555/ad1_sample', [[728, 90], [300, 250]], 'div-gpt-ad-22222-0').addService(googletag.pubads());
googletag.defineSlot('/55555/ad2_sample', [[970, 90], [728, 90]], 'div-gpt-ad-33333-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
</脚本>
身体:
<div id='div-gpt-ad-22222-0′>
<脚本>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-22222-0'); });
</脚本>
</div>
<div id='div-gpt-ad-33333-0'>
<脚本>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-33333-0'); });
</脚本>
</div>
TCF2.0 兼容代码:
头:
<脚本>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
window.pg=window.pg||[];pg.atq=pg.atq||[]; // 建立同意队列
pg.atq.push(函数() {
//GAM标签
googletag.cmd.push(函数(){
googletag.defineSlot('/12345/ad1_sample', [[728, 90], [300, 250]], 'div-gpt-ad-22222-0').addService(googletag.pubads());
googletag.defineSlot('/12345/ad2_sample', [[970, 90], [728, 90]], 'div-gpt-ad-33333-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
});
</脚本>
<script src=”//m2d.m2.ai/pghb.domain.com.js” 异步></script>
身体:
<div id='div-gpt-ad-22222-0′>
<脚本>
pg.atq.push(function() {window.googletag.cmd.push(function() {googletag.display('div-gpt-ad-22222-0');})});
</脚本>
</div>
<div id='div-gpt-ad-33333-0′>
<脚本>
pg.atq.push(function() {window.googletag.cmd.push(function() {googletag.display('div-gpt-ad-33333-0');})});
</脚本>
</div>
代码中发生了什么变化以使其合规?
谷歌分析
示例原始代码(不符合 TCF2.0 标准):
<!– 全局站点代码 (gtag.js) – Google Analytics –>
<script async src=”https://www.googletagmanager.com/gtag/js?id=UA-12345-1″</script>
<脚本>
窗口.dataLayer = 窗口.dataLayer || [];
函数 gtag(){dataLayer.push(参数);}
gtag('js', new Date());
gtag('配置', 'UA-12345-1');
</脚本>
TCF2.0 兼容代码:
<脚本>
window.pg=window.pg||[];pg.acq=pg.acq||[]; // 建立同意队列
pg.acq.push(函数() {
// 全局网站代码 (gtag.js)
pg.loadJS(“https://www.googletagmanager.com/gtag/js?id=UA-12345-1”);
窗口.dataLayer = 窗口.dataLayer || [];
函数 gtag(){dataLayer.push(参数);}
gtag('js', new Date());
gtag('配置', 'UA-12345-1');
});
</脚本>
代码中发生了什么变化以使其合规?
GAM + 谷歌分析
TCF2.0 兼容代码:
头:
<脚本>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
window.pg=window.pg||[];pg.acq=pg.acq||[];
pg.acq.push(函数() {
//GAM标签
googletag.cmd.push(函数(){
googletag.defineSlot('/55555/sample_ad1', [[728, 90], [300, 250]], 'div-gpt-ad-22222-0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
//谷歌分析
pg.loadJS(“https://www.googletagmanager.com/gtag/js?id=UA-147580335-1”); 窗口.dataLayer = 窗口.dataLayer || [];
函数 gtag(){dataLayer.push(参数);}
gtag('js', new Date());
gtag('配置', 'UA-147580335-1');
});
</脚本>
<script src=”//m2d.m2.ai/PUBDOMAIN.js” 异步></script>
身体:
<div id='div-gpt-ad-22222-0′>
<脚本>
pg.acq.push(function() {window.googletag.cmd.push(function() {googletag.display('div-gpt-ad-22222-0');})});
</脚本>
<分区>