- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Добрый день!
Нашел на форуме такое решение от Дмитрия Громова:
<div id="yandex_rtb_R-A-123456-1"></div>
<script type="text/javascript">
if (typeof pageNumber =="undefined") var pageNumber = 1;
else pageNumber++;
document.getElementById("yandex_rtb_R-A-123456-1").id = "yandex_rtb_R-A-123456-1-" + pageNumber;
(function (w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: "R-A-123456-1",
renderTo: "yandex_rtb_R-A-123456-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>
Оно работает. Спасибо ему за это.
НО как реализовать несколько блоков с таким скриптом на одной странице?
Как я понял, это решение не работает если применить его к нескольким блокам на одной странице?
Помогите мне и многим владельцам сайтов, кто так же в поиске подобного.
---------- Добавлено 20.02.2020 в 16:08 ----------
видимо кэш и CDN
все работает)
Добрый день!
Нашел на форуме такое решение от Дмитрия Громова:
<div id="yandex_rtb_R-A-123456-1"></div>
<script type="text/javascript">
if (typeof pageNumber =="undefined") var pageNumber = 1;
else pageNumber++;
document.getElementById("yandex_rtb_R-A-123456-1").id = "yandex_rtb_R-A-123456-1-" + pageNumber;
(function (w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: "R-A-123456-1",
renderTo: "yandex_rtb_R-A-123456-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>
Оно работает. Спасибо ему за это.
НО как реализовать несколько блоков с таким скриптом на одной странице?
Как я понял, это решение не работает если применить его к нескольким блокам на одной странице?
Помогите мне и многим владельцам сайтов, кто так же в поиске подобного.
---------- Добавлено 20.02.2020 в 16:08 ----------
видимо кэш и CDN
все работает)
Добрый день! Если блоки устанавливаются в ленту с бесконечной выдачей, то в скрипте нужно следить за значениями параметра "pageNumber" (должен соответствовать номеру страницы) и "div id". Также ID контейнера должен быть уникальным и соответствовать параметру "renderTo" в script.
Дмитрий, здравствуйте!
У меня получается так, что 3 блока (один в боковом виджете справа, второй в середине статьи и третий в конце статьи).
Все три имеют свои id RTB.
В остальном скрипт одинаковый.
И при просмотре страницы с пк срабатывает всегда боковой и иногда в конце статьи.
А с мобильного только в конце статьи.
Может быть так, что все три блока мешаю друг другу в скрипте:
<script type="text/javascript">
if (typeof pageNumber =="undefined") var pageNumber = 1;
else pageNumber++;
document.getElementById("yandex_rtb_R-A-123456-1").id = "yandex_rtb_R-A-123456-1-" + pageNumber;
(function (w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: "R-A-123456-1",
renderTo: "yandex_rtb_R-A-123456-1-" + pageNumber,
async: true,
pageNumber: pageNumber
});
вся фишка в том, что если разместить один блок - то все работает, а два или более - отображается только один
Дмитрий, здравствуйте!
У меня получается так, что 3 блока (один в боковом виджете справа, второй в середине статьи и третий в конце статьи).
Все три имеют свои id RTB.
В остальном скрипт одинаковый.
И при просмотре страницы с пк срабатывает всегда боковой и иногда в конце статьи.
А с мобильного только в конце статьи.
Может быть так, что все три блока мешаю друг другу в скрипте:
<script type="text/javascript">
if (typeof pageNumber =="undefined") var pageNumber = 1;
else pageNumber++;
document.getElementById("yandex_rtb_R-A-123456-1").id = "yandex_rtb_R-A-123456-1-" + pageNumber;
(function (w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: "R-A-123456-1",
renderTo: "yandex_rtb_R-A-123456-1-" + pageNumber,
async: true,
pageNumber: pageNumber
});
вся фишка в том, что если разместить один блок - то все работает, а два или более - отображается только один
Добрый день! Нужно заменить ID в <div id="yandex_rtb_R-A-123456-1"></div> и в renderTo: "yandex_rtb_R-A-123456-1-" + pageNumber, например, на <div id="yandex_rtb1"></div> renderTo: "yandex_rtb1" + pageNumber.
В другом блоке — на другой, например: на <div id="yandex_rtb2"></div> renderTo: "yandex_rtb2" + pageNumber.
У третьего — например, на <div id="yandex_rtb3"></div> renderTo: "yandex_rtb3" + pageNumber.
То есть, ID контейнера — так же, как и ID RTB-блока должен быть уникальным на странице и в ленте.
Добрый день! Нужно заменить ID в <div id="yandex_rtb_R-A-123456-1"></div> и в renderTo: "yandex_rtb_R-A-123456-1-" + pageNumber, например, на <div id="yandex_rtb1"></div> renderTo: "yandex_rtb1" + pageNumber.
В другом блоке — на другой, например: на <div id="yandex_rtb2"></div> renderTo: "yandex_rtb2" + pageNumber.
У третьего — например, на <div id="yandex_rtb3"></div> renderTo: "yandex_rtb3" + pageNumber.
То есть, ID контейнера — так же, как и ID RTB-блока должен быть уникальным на странице и в ленте.
Дмитрий, так все и сделано, но ID каждого блока взяты из разных RTB баннеров. То есть yandex_rtb_R-A-123456-1 / yandex_rtb_R-A-123456-2 и yandex_rtb_R-A-123456-4 (к примеру)