@lexinti

Как добавить один блок РСЯ несколько раз на страницу?

Добрый вечер всем, есть код ниже, если его несколько раз вставить на страницу, то он должен по идее несколько раз отдельно подгрузить рекламу яндекса, но так не происходит, подгружается последняя вставленная копия скрипта. Мне нужно в статью вставить перед H2 такие блоки что бы увеличить количество рекламы. Помогите пожалуйста решить проблему и переделать скрипт что бы он работал.

<div id="yandex_rtb_R-A-XXXXXX-1"></div>

<script type="text/javascript">
  if (typeof pageNumber === "undefined") {
    var pageNumber = 1;
  } else {
    pageNumber++;
  }

  var adDiv = document.getElementById("yandex_rtb_R-A-XXXXXX-1");
  adDiv.id = "yandex_rtb_R-A-XXXXXX-1-" + pageNumber;

  (function(w, d, n, s, t) {
    w[n] = w[n] || [];
    w[n].push(function() {
      Ya.Context.AdvManager.render({
        blockId: "R-A-XXXXXX-1",
        renderTo: "yandex_rtb_R-A-XXXXXX-1-" + pageNumber,
        async: true,
        pageNumber: pageNumber
      });
    });
    t = d.getElementsByTagName("script")[0];
    s = d.createElement("script");
    s.type = "text/javascript";
    s.src = "//an.yandex.ru/system/context.js";
    s.async = true;
    t.parentNode.insertBefore(s, t);
  })(this, this.document, "yandexContextAsyncCallbacks");
</script>


П.С. у меня нет возможности вставлять в ручную коды рекламы как написанно в яндексе. Мне нужно одним кодом вставить перед каждым заголовком H2.

П.С.С. если отдельно еще добавить скрипты вызова рекламы с уникальными идентификаторами то реклама начинает подгружаться.

<script>window.yaContextCb.push(()=>{
    Ya.Context.AdvManager.render({
        blockId: "R-A-123456-1",
        renderTo: "yandex_rtb_R-A-123456-1-2", // в конце названия ставится 2
    })
})</script>
<script>window.yaContextCb.push(()=>{
    Ya.Context.AdvManager.render({
        blockId: "R-A-123456-1",
        renderTo: "yandex_rtb_R-A-123456-1-3", // в конце названия ставится 2
    })
})</script>
<script>window.yaContextCb.push(()=>{
    Ya.Context.AdvManager.render({
        blockId: "R-A-123456-1",
        renderTo: "yandex_rtb_R-A-123456-1-4", // в конце названия ставится 2
    })
})</script>
<script>window.yaContextCb.push(()=>{
    Ya.Context.AdvManager.render({
        blockId: "R-A-123456-1",
        renderTo: "yandex_rtb_R-A-123456-1-5", // в конце названия ставится 2
    })
})</script>
<script>window.yaContextCb.push(()=>{
    Ya.Context.AdvManager.render({
        blockId: "R-A-123456-1",
        renderTo: "yandex_rtb_R-A-123456-1-6", // в конце названия ставится 2
    })
})</script>
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы