我在网站上使用的DFP代码已经运行了一段时间,但是在解决另一个问题时,我在控制台中注意到了针对每个定义的广告位的警告:

Incorrect usage of googletag.Slot defineSizeMapping: Size mapping has to be an array

我的密码

var mobileMapping = googletag.sizeMapping().
                                addSize([0, 0], [320,50]).
                                addSize([0, 0], [320,100]).
                                addSize([0, 0], [320,150]).
                                build();



adSlots.ad_mobile_1 = googletag.defineSlot(   '/6129006/ad_mob_1',
                                                          [[320, 50], [320, 100], [320, 150]],
                                                          'ad_mob_1')
                                                          .defineSizeMapping(mobileMapping)
                                                          .addService(googletag.pubads())
                                                          .setCollapseEmptyDiv(true);


遵循Google自己的responsive tutorial,以了解如何在defineSizeMapping调用中实现sizeMapping。

该警告提示defineSizeMapping需要一个数组,而sizeMapping似乎正在输出一个对象。

我已经尝试了各种代码实现,但看不到出了什么问题....任何DFP专家都可以给我一点启示吗?

最佳答案

当您连续三次将映射设置为相同的分辨率时,请尝试在数组中添加广告尺寸:

var mobileMapping = googletag.sizeMapping().
                            addSize([0, 0], [[320,50],[320,100],[320,150]]).
                            build();


看到https://support.google.com/dfp_premium/answer/3423562吗?

09-25 17:22