目前,我正在尝试设置使用动态响应框架的Google广告。通过这个,我想创建一个与屏幕大小有关的横幅广告,而不是预先定义一个大小,比如300x250或300x240。
DFPBannerView应该能够接受一个自定义的CGRect作为参数,而DFP行项应该使用CGRect的全部大小。
我通过以下技巧尝试了这一点:
是否有任何方式可以设置谷歌DFP的移动横幅,以采取完全大小的设置?
发布于 2018-12-14 01:26:58
不确定我是否理解正确,但我想您必须这样做:https://www.monetizemore.com/blog/how-to-make-dfp-ad-units-responsive-2/
我使用这个例子向我现有的DFP调用中添加响应单元。
请注意,我没有使用这个顶级脚本"var useSSL“。我在创建单元时使用了DFP给我的东西。
我创建了2个Ads单元,并创建了每个单元(728x90、468x60和320x50)所需的3种大小。我的广告要求广告,但你可以打电话给你的线路。
毕竟,为了更直接一点,我刚才补充说:
var mapping = googletag.sizeMapping().
addSize([992, 0], [728, 90]).
addSize([768, 0], [468, 60]).
addSize([320, 0], [320, 50]).build();
var mapping2 = googletag.sizeMapping().
addSize([992, 0], [728, 90]).
addSize([768, 0], [468, 60]).
addSize([320, 0], [320, 50]).build();
googletag.defineSlot('/1071122/Your-ads-div-id1', [300, 250], 'div-gpt-ad-123123123-0').defineSizeMapping(mapping).addService(googletag.pubads());
googletag.defineSlot('/1071122/Your-ads-div-id2', [300, 250], 'div-gpt-ad-123123123-0').defineSizeMapping(mapping2).addService(googletag.pubads());在寻找这样做的例子时,我发现了许多棘手的方法。但真诚地不需要这些。我现在就这么做了,这条线就是我找到的寻找例子的“答案”之一。如果我能对我的网站做些什么的话,书签上了这个书签。如果可以的话,也许我会恢复所有代码,使其工作如下:
<!-- Adsense/DFP default header -->
<script type="text/javascript" async='async' src='https://www.googletagservices.com/tag/js/gpt.js'></script>
<script>
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
</script>
<script>
googletag.cmd.push(function() {
//here you create a var to map your sizes for this unit - mine is equal in addSizes but you can create how many you need and with different sizes you like. First [992, 0] is for resolution and later [728, 90] is the banner size to this resolution (you can put more than one size for each resolution if you like)
var mapping = googletag.sizeMapping().
addSize([992, 0], [728, 90]).
addSize([768, 0], [468, 60]).
addSize([320, 0], [320, 50]).build();
var mapping2 = googletag.sizeMapping().
addSize([992, 0], [728, 90]).
addSize([768, 0], [468, 60]).
addSize([320, 0], [320, 50]).build();
googletag.defineSlot('/1231231/your-ads-div-id-1', [300, 250], 'div-gpt-ad-1231231231231-0').defineSizeMapping(mapping).addService(googletag.pubads());
googletag.defineSlot('/1231231/your-ads-div-id-2', [300, 250], 'div-gpt-ad-1231231231231-0').defineSizeMapping(mapping2).addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.pubads().collapseEmptyDivs();
googletag.enableServices();
});
</script>就这样。使用此代码,您有两个响应性广告单元,调用DFP (Ads)广告横幅,具有3种大小到3种不同分辨率。
当然,在HTML中,您必须调用这些DIVs,例如:
<!-- /1231231/your-ads-div-id-1 -->
<div id="div-gpt-ad-123123123-0">
<script>
googletag.cmd.push(function() { googletag.display("div-gpt-ad-1231231231231-0"); });
</script>
</div>https://stackoverflow.com/questions/52597715
复制相似问题