【问题标题】:Moving DFP ads post document load在文档加载后移动 DFP 广告
【发布时间】:2015-08-14 02:31:38
【问题描述】:

我们有一个带有内容区域和侧边栏的响应式网站。当站点响应或在移动设备上加载时,侧边栏位于内容区域下方。问题是侧边栏顶部的 mrec 现在在页面上太低了,我们需要在 dom 中让它更高。

所以,预渲染我像这样弹出几个 div

<div class="ad-inject-ad ad-mrec2"></div>

根据页面、位置等,可以是 mrec1 到 3。

我还将边栏 mrecs 包装在可识别的类中,例如 ad-medrec2,这样我就可以在移动设备上移动它们

$('.sidebar .ad-medrec2').appendTo('.ad-inject-ad.ad-mrec2')

这很有魅力。

但是,60 - 70% 的时间广告会消失。结构仍然存在,您可以看到容器 div 的高度为 300+ 像素,而广告应该在该位置,但广告消失了。

我尝试在 DFP 中使用 refresh() 方法以及 display() 方法。似乎广告已显示,但不可见。我失去了广告的曝光度,而不是广告本身。

我了解到这可能是由 iframe 及其无法重置状态引起的。但是,我不确定是否需要刷新状态。

而且,为什么这一切都在三分之一的时间内有效?

我可以在这里做什么?

编辑

我也看过 DFP jQuery 插件,但如果可以避免,我宁愿不加载 另一个 脚本。

【问题讨论】:

    标签: javascript jquery html google-dfp


    【解决方案1】:

    为什么不在页面上创建第二个 adunit 呢? 您可以使用 DFP 函数 defineSizeMapping 根据窗口大小呈现正确的广告。

    【讨论】:

    • 不错!我会试一试并报告。你有任何代码示例吗? Google 文档很糟糕。
    • 这里是Googles doc on the subject。你会发现那些正是你正在寻找的例子。
    • 太棒了,谢谢。我会试一试并报告
    【解决方案2】:

    您可以使用 changeCorrelator (GPT References) 重新加载广告,而无需获得新的展示次数。

    // This call to refresh fetches a new ad for slot1, without changing the
    // correlator.
    googletag.pubads().refresh([slot1], {changeCorrelator: false});
    
    // This call to refresh fetches a new ad for each slot, without changing
    // the correlator.
    googletag.pubads().refresh(null, {changeCorrelator: false});
    

    参考:https://developers.google.com/doubleclick-gpt/reference

    【讨论】:

      【解决方案3】:

      所以,我现在的成功率很高。

      首先,我移动广告。

      $('.sidebar .ad-medrec2').appendTo('.ad-inject-ad.ad-mrec2');
      

      然后,我算出广告容器的id和slot叫什么,删除div的内容,再次调用googletag函数重新填充。

      mrec2_id = $('.ad-medrec2').attr('id');
      mrec2_slot_name = mrec2_id.substr(0, mrec2_id.indexOf('-wrapper'))
      $('#' + mrec2_slot_name).children().remove();
      googletag.cmd.push(function() {
        googletag.display(mrec2_slot_name);
      });
      

      这运作良好。但是,我担心这会加载两次广告。在我想出更好的选择之前,我会继续这样做。

      【讨论】:

      • 注意:重新定位 iframe(DFP 在异步模式下使用 iframe)会导致 iframe 刷新。这意味着对广告服务器的第二次请求。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-23
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      • 2021-09-17
      相关资源
      最近更新 更多