clickio

Добавление тестовых блоков на страницу паблишера

Jan 27th, 2021 (edited)
194
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function(d,w){    
  2.     let adUnitSiteId    = "194363";       // ID сайта, берем в коде блока    
  3.     let adUnitsSettings = [
  4.         {
  5.             adUnitId: "677869",           // XOR ID ad unit'а, можно взять из стандартного кода блока
  6.             elementSelector: "body",      // Селектор элемента, в который вставляем контейнер
  7.             position: "top"               // Позиция контейнера в указанном элементе, если "top" - вставляем перед первым элементом (для миррор и смарт блоков)
  8.         } // Для добавления дополнительных блоков через запятую добавить в массив настройки в фигурных скобках
  9.     ];
  10.     let removeSelector = ".classToRemove";    // Селектор для удаления элементов
  11.    
  12.     (function(){ // Удаление элементов со страницы по селектору
  13.         let s = d.querySelectorAll(removeSelector);
  14.         if (s && s.length)
  15.         {
  16.             Array.from(s).forEach(function(e){
  17.                 e.remove();
  18.             });
  19.         }
  20.     })();
  21.     (function(){ // Подключаем 360_light в head, используя adUnitSiteId
  22.         let ss = d.querySelector("script[src=\"//s.clickiocdn.com/t/" + adUnitSiteId + "/360.js\"]");
  23.         let s = d.createElement("script");
  24.         s.src = "//s.clickiocdn.com/t/" + adUnitSiteId + "/360" + ((ss)?"":"_light") + ".js";
  25.         s.async = "async";
  26.         d.querySelector("head").appendChild(s);
  27.     })();
  28.  
  29.     function addContainer(cId, s, p) {
  30.         let c = d.createElement('div'); // Создаём контейнер с указанным ID
  31.         c.id  = cId;
  32.         let e = d.querySelector(s);
  33.         if(e)
  34.         {
  35.             if (p && p === "top") // Перед первым элементом
  36.             {
  37.                 let ch = d.querySelector(s + " > :first-child");
  38.                 if(ch) e.insertBefore(c, ch)
  39.                 else   e.appendChild(c); // Усли нет дочерних элементов - просто добавляем к родителю
  40.             }
  41.             else e.appendChild(c); // Добавляем в конец
  42.         }
  43.         return c;
  44.     }
  45.     let containersId = "clickio_adunit";   // ID контейнеров ad unit'ов (можно не трогать)
  46.     let k = 1;                             // счетчик, прибавляемык к ID контейнера
  47.     adUnitsSettings.forEach(function(adUnit){
  48.         let cId = containersId + "-" + k;
  49.         addContainer(cId, adUnit.elementSelector, (adUnit.position?adUnit.position:false)); // Вызываем функцию вставки контейнера
  50.         (window.__lxGc__=window.__lxGc__||{'s':{},'b':0}).cmd=window.__lxGc__.cmd||[];
  51.         __lxGc__.cmd.push(function(){
  52.             __lxGc__.display(cId, "_" + adUnitSiteId, "_" + adUnit.adUnitId); // Показываем ad unit
  53.         });
  54.         k++;
  55.     });
  56. })(document, window);
RAW Paste Data