我正在尝试使用Google发布商代码(GPT)按照Google指南显示自适应广告。我尝试尽可能地复制他们的示例,但我的广告没有以任何视口大小显示在我的页面上。我将所有内容都删除了最简单的示例(桌面广告尺寸为一个),但即使该广告也不会显示。
如果我摆脱额外的尺寸映射代码(我已经在下面的代码示例中替换了我的DFP广告位信息,一切都很好,但我可以向你保证我有那么多权利)。
有谁知道我可能做错了什么?谢谢!
<script src="http://www.googletagservices.com/tag/js/gpt.js"></script>
<script type='text/javascript'>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
googletag.cmd.push(function() {
var mapping = googletag.sizeMapping().
addSize([1024, 768 ], [728, 90]). // Should work for desktops
build();
googletag.defineSlot('/######/ad-slot-name', [728, 90], "acm-ad-tag-728x90_top").
defineSizeMapping(mapping).
addService(googletag.pubads());
googletag.enableServices();
});
</script>
答案 0 :(得分:1)
您的代码看起来没问题 - 有一点,那就是您在网页上唯一的广告代码?如果您有多个广告代码,则似乎必须为每个广告代码添加映射,即使并非所有广告单元都需要响应。在为页面上的所有广告位定义尺寸映射之前,我无法始终如一地使用此技术。
除此之外,大概是您确定符合浏览器的宽度和高度标准?如果您使用Firefox的响应式设计视图&#39; (Windows上的ctrl-shift-m或Firefox主菜单上的“Web Developer&#39;&gt;响应设计视图”)。您是否在DFP控制台中看到任何内容(警告,错误)?
我的工作始终如一,在某些情况下显示一系列广告尺寸和切换广告单元 - 我放了一个short description online,虽然我不认为那里有任何东西你错过了。
答案 1 :(得分:0)
这是我的解决方案,我如何使我的dfp标签响应
var width = window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;
if (width >= 768) {
document.write("<!-- SPM_728x90_HEAD_PT -->");
document.write("<div id='div-gpt-ad-1425863369744-6'> ");
googletag.cmd.push(function() { googletag.display('div-gpt-ad-1425863369744-6'); });
document.write("</div>");
}
else if ((width >= 480) && (width < 768)) {
document.write("<!-- /11111111/SPM_468x60_HEAD_T -->");
document.write("<div id='div-gpt-ad-1450193161892-0'> ");
googletag.cmd.push(function() { googletag.display('div-gpt-ad-1450193161892-0'); });
document.write("</div>");
}
else if(width<=479){
document.write("<!-- /11111111/SPM_320x50_HEAD_M -->");
document.write("<div id='div-gpt-ad-1450193161892-1'> ");
googletag.cmd.push(function() { googletag.display('div-gpt-ad-1450193161892-1'); });
document.write("</div>");
}
</script>