Как обновить объявления в Google Ad Manager (DFP) с помощью идентификатора позиции

У меня есть вопрос о том, как обновить объявления, указав идентификатор позиции,

в моем случае у меня есть 2 версии объявления для каждой позиции, так как я могу обновить рекламу, указав идентификатор позиции. Я могу получить идентификатор позиции с помощью этой функции:

    googletag.pubads().addEventListener('slotRenderEnded', function(event) {
      var slot = event.slot;
      console.group('Slot', slot.getSlotElementId(), 'finished rendering.');
      console.log('Line Item ID:', event.lineItemId);

    });

Спасибо


person Dmitryadam    schedule 17.07.2020    source источник


Ответы (1)


У вас есть слот, поэтому, если вам нужен lineItemId, вы можете просто вызвать googletag.pubads().refresh([slot]);

person BeWarned    schedule 18.07.2020
comment
Привет, спасибо за быстрый ответ, но как я могу вставить свой lineItemId в эту функцию: googletag.pubads().refresh([slot]); Заставляет ли это рекламу загружать рекламное объявление на основе идентификатора позиции? - person Dmitryadam; 21.07.2020
comment
Вы не передаете идентификатор позиции для обновления. То, как вы определяете свою позицию в Google Ad Manager, определяет, какие рекламные места она соответствует. Вы можете передать свойство таргетинга position в defineSlot со значением, установленным в LB1, чтобы указать, что это первое объявление размера таблицы лидеров на странице, вы можете определить ключ/значение для позиции, которая будет соответствовать слотам со свойством таргетинга location=LB1. - person BeWarned; 22.07.2020
comment
Я все еще застрял в этом моменте, не могли бы вы сказать мне точный образец? - person Dmitryadam; 07.08.2020
comment
@Dmitryadam: если у вас есть 2 креатива в одной позиции, взвешенные до 50% SOV каждый, при обновлении рекламного места вызываемые позиции попытаются автоматически сбалансировать креатив1 и креатив2. Так что вам просто нужно обновить рекламный слот. - person rabsom; 13.08.2020
comment
Вы хотите обновить только те объявления, которые связаны с определенной позицией? В этом случае вам нужно создать собственную структуру данных для хранения этой информации. вар элементы = []; googletag.pubads().addEventListener('slotRenderEnded', function(event) { items[event.lineItemId] = (items[event.lineItemId] || []).concat(event.slot); }) function refresh(lineId ){ (items[lineId]||[]).forEach(slot =› googletag.pubads().refresh([slot]))} удалить элементы[lineId]; } - person BeWarned; 16.08.2020