- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Обернуть скрипт рекламы в условие, например чтобы срабатывал только на мобилках:
планшеты и ПК:
Спасибо! Только что попробовал ваш код. Не работает.
Не работает.
Все там работает, в тег скрипта все это обернуть не забыли, а у рся убрать?
В итоге должно получиться так примерно:
<script type='text/javascript'>
if (window.matchMedia('(max-width: 520px)').matches) {
(function(w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: "айди вашего блока",
renderTo: "айди контейнера куда будет вставляться реклама",
async: true
});
});
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>
Вставлять лучше перед </body>
Спасибо! Только что попробовал ваш код. Не работает.
Вам же рабочий вариант выложила уже давно. Вот, если конкретно под ваши цели
<div id="rtbBlock"></div>
<script type="text/javascript">
var bvw=document.getElementsByTagName("body")[0].offsetWidth;
if ( bvw <= 800 ){rtbBlockID = "СВОЙ БЛОК ДЛЯ МОБИЛ";}
if ( bvw >= 800 ){rtbBlockID = "СВОЙ БЛОК ДЛЯ ПК";}
(function(w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: rtbBlockID,
renderTo: "rtbBlock",
async: true
});
});
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>
</div>
Этот код при ширине меньше 800 выдает мобильный блок. При ширине от 800 выдает рекламу на ПК.
Можно сделать 2 разных кода. Удаляется первую строчку - не будет рекламы на мобилах. Удаляете вторую - не будет рекламы на ПК.
Вам же рабочий вариант выложила уже давно. Вот, если конкретно под ваши цели
<div id="rtbBlock"></div>
<script type="text/javascript">
var bvw=document.getElementsByTagName("body")[0].offsetWidth;
if ( bvw <= 800 ){rtbBlockID = "СВОЙ БЛОК ДЛЯ МОБИЛ";}
if ( bvw >= 800 ){rtbBlockID = "СВОЙ БЛОК ДЛЯ ПК";}
(function(w, d, n, s, t) {
w[n] = w[n] || [];
w[n].push(function() {
Ya.Context.AdvManager.render({
blockId: rtbBlockID,
renderTo: "rtbBlock",
async: true
});
});
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>
</div>
Этот код при ширине меньше 800 выдает мобильный блок. При ширине от 800 выдает рекламу на ПК.
Можно сделать 2 разных кода. Удаляется первую строчку - не будет рекламы на мобилах. Удаляете вторую - не будет рекламы на ПК.
Ваш код реально помог! Все заработало)
Намного точней, корректней и быстрей в плане загрузки баннеров будет определение USER_AGENT и вывод для мобилы одного, а если нет, то другого.
Собственно, так и сделал еще лет 5 назад.
Достаточно смотреть есть ли в юзер агенте Android, iPhone, iPad, webOS и, если да, то выводить им мобильный баннер через РНР, и, если нет, то выводить десктопный.
Намного точней, корректней и быстрей в плане загрузки баннеров будет определение USER_AGENT и вывод для мобилы одного, а если нет, то другого.
Чем это будет быстрее?
Вы думаете это выполняется дольше чем определение USER_AGENT на PHP?
ar bvw=document.getElementsByTagName("body")[0].offsetWidth;
if ( bvw <= 800 )
Реклама все равно на стороне клиента только грузится, поэтому то же определение юзерагента лучше на ЖС делать, чтобы лишние запросы на сервер не отправлять
Чем это будет быстрее?
Ну да. а еще вопрос... почему "Точней"?)))