停用DFP广告管理系统/ DoubleClick iFrame

时间:2013-03-11 03:14:52

标签: javascript google-dfp

在Google DFP广告管理系统(DoubleClick)中,您会收到一个广告代码,用于放入标题,另一个广告代码放在您的标题中。当我将此给定的广告代码/代码应用于我的网站时,无论是异步还是同步,广告都会始终显示在iframe中。我想知道如何禁用iFrame。

以下是DFP广告管理系统生成的标题代码:

<script type='text/javascript'>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
(function() {
var gads = document.createElement('script');
gads.async = true;
gads.type = 'text/javascript';
var useSSL = 'https:' == document.location.protocol;
gads.src = (useSSL ? 'https:' : 'http:') +
'//www.googletagservices.com/tag/js/gpt.js';
var node = document.getElementsByTagName('script')[0];
node.parentNode.insertBefore(gads, node);
})();
</script>

<script type='text/javascript'>
googletag.cmd.push(function() {
googletag.defineSlot('/16569348/ad-test-1', [400, 267], 'div-gpt-ad-1362958263281-    0').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
</script>

以下是DFP广告管理系统生成的正文代码:

<!-- ad-test-1 -->
<div id='div-gpt-ad-1362958263281-0' style='width:400px; height:267px;'>
<script type='text/javascript'>
googletag.cmd.push(function() { googletag.display('div-gpt-ad-1362958263281-0'); });
</script>
</div>

以下是jsFiddle展示此问题(在Google Chrome中检查元素以查看iframe):

http://jsfiddle.net/EptwH/

同样,我想删除iframe(并保留图片/广告)...任何帮助都会真正受到赞赏。 :)

5 个答案:

答案 0 :(得分:5)

来自DFP广告管理系统的网站:link

  

当您使用Google发布商代码(GPT)时,您的广告会自动加载到iframe中。

答案 1 :(得分:1)

Google故意将广告加载到iframe中,这是设计使然。

这样做是因为它既可以让您的页面加载更快,也可以使用沙盒样式和脚本等。页面渲染速度更快,因为iframe可以异步加载和呈现广告内容。

如果您愿意,可以使用您的广告代码“破解”iframe,因此iframe中的广告没有真正的劣势,请向我们展示您尝试做的事情的示例遇到问题

这里有一些more reading

答案 2 :(得分:1)

我正在为数字广告客户工作,您永远都不应禁用来自广告的iFrame。

ADS可以包含有害脚本,因此最好使用Safeframe(使用src定位到外来源的框架)来防止这种情况。

还有许多广告脚本使用document.write,并且在iframe中可以毫无问题地进行操作,他们会在document.ready之后在主窗口上执行此操作,从而将您的页面涂成空白。

答案 3 :(得分:0)

我们遇到了同样的问题,因为我们的目标是将原生广告直接添加到主机页面DOM而非IFRAME以获得完全响应。我们提出了一个解决方案,我们会使用消息将广告内容字符串发布到主页。这样就没有IFRAME了。

有关详细信息,请参阅http://insights.burda-studios.de/howto-run-fully-responsive-doubleclick-native-ads-without-iframes/

请注意,我们只使用此方法投放自家广告,而不是任何可能导致意外行为的第三方广告。

答案 4 :(得分:-1)

您的部分问题(无论是异步还是同步)在我的经历中是错误的。 不确定这是否已更改,或者您是否未能同步运行GPT标记,但由于我已更改为同步模式,因此不再使用iframe。 请参阅belmodo.tv