Изменение позиции объявления DFP после загрузки динамического контента

Мне нужно вставить объявление DFP (средний прямоугольник) между динамическим содержимым. Содержимое загружается через AJAX, а затем заполняется, как показано ниже .предметы.

<div class="items">
  <div>The DFP ad</div>
  <div>New content</div> 
  <div>New content</div> 
  <div>New content</div> 
  <div>New content</div> 
</div>

Мне нужно, чтобы объявление отображалось после третьего динамического контента, например. Изменение с помощью JS (Jquery) вызывает неустойчивый рендеринг рекламы, в основном просто оставляя рекламу пустой.

1 ответ

  1. Если я правильно понял вопрос, вам просто нужно добавить рекламный слот динамически.

    Вот рабочий пример, который динамически создает рекламные слоты:
    https://github.com/ffeast/gpt-tests/blob/master/dynamic_slots.html

    И вот она живая:
    https://jsfiddle.net/Lpqtrtgu/

    Это отрывок, который создает новый рекламный слот и отображает его:

        var slotId = 1;
            function addNewSlot() {
                // add a div containing the dynamic ad
                var label = document.createElement('h1');
                label.innerHTML = 'Dynamic slot #' + slotId;
                document.body.appendChild(label);
                var container = document.createElement('div');
                container.id = 'slot-' + slotId;
                document.body.appendChild(container);
                // dynamic slot creation
                googletag.cmd.push(function() {
                    var slot = googletag.defineSlot('/46362926/test_slot1', [240, 400], container.id).addService(googletag.pubads());
                    googletag.cmd.push(function() { googletag.display(container.id); googletag.pubads().refresh([slot]); });
                });
                slotId++;
            };
    

    Официальные документы о том, как обрабатывать такие случаи в DFP:
    https://support.google.com/dfp_premium/answer/4578089?hl=en