同一广告尺寸相同的多个GPT广告无效

时间:2014-04-23 06:12:17

标签: ads adsense google-dfp

我有一个包含两个GPT广告的网页。

如果两个广告的尺寸不同,则广告会显示在页面中。

以下代码正常运行

googletag.defineSlot("/123/test", [728, 90], "div-gpt-ad-123456789-0")
.addService(googletag.pubads())
.setTargeting("interests", ["sports", "music", "movies"]);

和第二个广告是

googletag.defineSlot("/123/test", [[468, 60], [728, 90], [300, 250]], "div-gpt-ad-123456789-1")
    .addService(googletag.pubads())
    .setTargeting("gender", "male")
.setTargeting("age", "20-30");

但如果广告大小相同

 googletag.defineSlot("/123/test", [300, 250], "div-gpt-ad-123456789-0")
    .addService(googletag.pubads())
    .setTargeting("interests", ["sports", "music", "movies"]);

和第二个广告是

googletag.defineSlot("/123/test", [300, 250], "div-gpt-ad-123456789-1")
    .addService(googletag.pubads())
    .setTargeting("gender", "male")
.setTargeting("age", "20-30");

请帮帮我。

2 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,我找到了解决方案:

<html>
<head>
  <script src="http://www.googletagservices.com/tag/js/gpt.js"></script>
  <script type="text/javascript">
    var gptAdSlots = [];
    googletag.cmd.push(function() {

      gptAdSlots[0] = googletag.defineSlot("/123/test", [300, 250], "div-gpt-ad-123456789-0")
                             .addService(googletag.pubads());

      gptAdSlots[1] = googletag.defineSlot("/123/test", [300, 250], "div-gpt-ad-123456789-1").
                             .addService(googletag.pubads());

      googletag.pubads().enableSingleRequest();

      // Disable initial load.
      googletag.pubads().disableInitialLoad();

      // Start ad fetching
      googletag.enableServices();
    });
  </script>
</head>
<body>
<div id='div-gpt-ad-123456789-0'>
  <script type='text/javascript'>
    googletag.cmd.push(function() { 
      googletag.display('div-gpt-ad-123456789-0');
      // Refresh ad.
      googletag.pubads().refresh([gptAdSlots[0]]);
    });
  </script>
</div>
<div id='div-gpt-ad-123456789-1'>
  <script type='text/javascript'>
    googletag.cmd.push(function() { 
      googletag.display('div-gpt-ad-123456789-1');
      // Refresh ad.
      googletag.pubads().refresh([gptAdSlots[1]]);
    });
  </script>
</div>
</body>

答案 1 :(得分:-1)

尝试使用不同的子广告单元:

googletag.defineSlot("/root_adunit/banner1", [728, 90], "div-gpt-ad-123456789-0")
googletag.defineSlot("/root_adunit/mrec1", [300, 250], "div-gpt-ad-123456789-1")
googletag.defineSlot("/root_adunit/mrec2", [300, 250], "div-gpt-ad-123456789-2")

广告资源中设置这些内容。在定位订单项时,选择root_adunit(不是mrec1mrec2),并应将相应的广告资源加载到两个广告单元中。