Настройка блоков РСЯ - Страница 2 - Форум об интернет-маркетинге
Этот сайт существует на доходы от рекламы.
Пожалуйста, выключите AdBlock.
Вернуться   Форум об интернет-маркетинге > > >
Ответ
 
Опции темы
Старый 03.12.2016, 00:03   #11
KGB
Профессор
 
Регистрация: 10.08.2006
Адрес: Питер
Сообщений: 995
Репутация: 148466
Социальные сети Профиль в ВКонтакте

По умолчанию Re: Настройка блоков РСЯ

Цитата:
Сообщение от Bosca Посмотреть сообщение
Решение не мое,
Цитата:
Сообщение от Bosca Посмотреть сообщение
window.matchMedia
Я не понимаю зачем использовать matchMedia, какой смысл? , тем более вроде опера мини его не понимает.

Используйте, только цифры свои ставьте и свои переменные.

Цитата:

<div id="rtbBlock"></div>

<script type="text/javascript">

var bvw=document.getElementsByTagName("body")[0].offsetWidth;

if ( bvw >= 1200 ){ rtbBlockID = "R-A-XXXX-1"; document.getElementById("rtbBlock").style.maxWidth = "850px";}

if ( bvw <= 1200 && bvw >= 980 ){ rtbBlockID = "R-A-XXXX-2"; document.getElementById("rtbBlock").style.maxWidth = "1200px"; }

if ( bvw <= 979 && bvw >= 730 ){rtbBlockID = "R-A-XXXX-3"; document.getElementById("rtbBlock").style.maxWidth = "980px"; }

if ( bvw <= 729 ){rtbBlockID = "R-A-XXXX-4"; document.getElementById("rtbBlock").style.maxWidth = "728px"; }

(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 id="yandex_rtb_XXXXX-X"></div> задаем свой идентификатор <div id="rtbBlock"></div> . Имя "rtbBlock" может быть любым, главное, чтобы в коде renderTo: было именно в это имя.

в переменную var bvw = записываем ширину body

Далее сравниваем эту ширину и в зависимости от значения подгружаем в blockId идентификатор нужного вам блока. Не обязательно там делать 4 проверки и подгружать четыре варианта, кому достаточно и двух, а кому и 6 потребуется.

Ну а document.getElementById("rtbFooter").style.maxWidth = "XXXpx"; это в принципе можно и не использовать, просто добавляет style="max-width:XXXpx" к вашему контейнеру

Последний раз редактировалось KGB; 03.12.2016 в 00:47..
KGB на форуме   Ответить с цитированием
Сказали спасибо 4 пользователей:

Реклама
Старый 03.12.2016, 07:11   #12
Сергей_К
Студент
 
Регистрация: 25.01.2014
Сообщений: 12
Репутация: 10

По умолчанию Re: Настройка блоков РСЯ

Цитата:
Сообщение от KGB Посмотреть сообщение
вроде опера мини его не понимает
Спасибо за вариант кода, сам начал пока использовать тот, что с matchMedia, очень даже доволен. Попробую и Ваш потестить. От программирования очень далек, так что для сравнения-оценки интересует только конечный результат - беспроблемность работы и удобство редактирования.
Посмотрел ОперуМини - жуткое зрелище, там вообще много чего не работает. Тот код или выводит (если с постером) или какое то 20-значное число на его месте отображает. У моих пользователей этот браузер у 2,13 %
Ну и подожду ответа по оценки работы самого кода, а не по его содержанию, что там matchMedia или еще что-то замеряет размер экрана и отсылает переменную куда надо - мне по барабану. Главное, чтобы посетителям сайта все быстро, стабильно и красиво отображалось и призывало кликнуть
Сергей_К вне форума   Ответить с цитированием
Старый 04.12.2016, 02:51   #13
KGB
Профессор
 
Регистрация: 10.08.2006
Адрес: Питер
Сообщений: 995
Репутация: 148466
Социальные сети Профиль в ВКонтакте

По умолчанию Re: Настройка блоков РСЯ

Цитата:
Сообщение от Сергей_К Посмотреть сообщение
Спасибо за вариант кода
Да это как бы не мой код, он стандартный и выполняет теже функции, что гуляющий в соседней теме и выложенный выше Bosca
Просто, повторюсь, я не понимаю, какой смысл в данной ситуации использовать matchMedia, котрый
Цитата:
Сообщение от Сергей_К Посмотреть сообщение
matchMedia или еще что-то замеряет размер экрана и отсылает переменную куда надо
если прекрасно работают более "древние" и более "стандартные". Есть еще много вариантов, например на jquery подгружать нужный код РТБ или другие. Только зачем усложнять?.
Плюс еще. Работать с известными со школьной скамьи знаками , ">" , "=", "<" просто нагляднее, чем с "max-width: ХХХpx". Ведь в последнем случае надо постоянно держать в уме, что "max-width" на самом деле означает что ширина окна браузера должна быть меньше ХХХ px. А "min-width" наоборот, больше))))))

Цитата:
Сообщение от Сергей_К Посмотреть сообщение
конечный результа
Конечный результат еще зависит от настроек РТБ, увы.
KGB на форуме   Ответить с цитированием
Старый 04.12.2016, 20:24   #14
xtras
Академик
 
Аватар для xtras
 
Регистрация: 03.12.2013
Сообщений: 3,113
Репутация: 226767
Отправить сообщение для xtras с помощью ICQ

По умолчанию Re: Настройка блоков РСЯ

Ппц идиотизм, чтобы добавить на сайт рекламный блок теперь надо идти на программиста выучиться сначала. 21й век на дворе, че, все для людей, максимальное удобство, адаптивность и доход для партнеров.
xtras вне форума   Ответить с цитированием
Сказали спасибо 2 пользователей:
Старый 05.12.2016, 00:08   #15
KGB
Профессор
 
Регистрация: 10.08.2006
Адрес: Питер
Сообщений: 995
Репутация: 148466
Социальные сети Профиль в ВКонтакте

По умолчанию Re: Настройка блоков РСЯ

Цитата:
Сообщение от xtras Посмотреть сообщение
все для людей,
По поводу для людей.
Написал сообщение клубе рся , с пожеланием вернуть в настройки блока лимит объявлений. Поддержите https://yandex.ru/blog/partner/spasi...fc2000215228f9

Чем такие настройки полезны. Помимо того, что можно использовать один код на разных страницах, можно создавать адаптивность.
Например у меня был (пока еще есть) блок постер горизонтальный, в котором в зависимости от ширины показывалось от 4х до одного объявления.
Делалось это просто изменением переменной yandex_direct_limit.
Цитата:
var mw=document.getElementsByTagName("body")[0].offsetWidth;
f (mw>=1400) {yandex_direct_limit = 4;}
if (mw<=1399) {yandex_direct_limit = 3;}
if (mw<=1150) {yandex_direct_limit = 2;}
if (mw<=500) {yandex_direct_limit = 1;}
Теперь же, что бы добиться такого же придется создавать 4 блока.
KGB на форуме   Ответить с цитированием
Старый 05.12.2016, 08:43   #16
vm66
Дипломник
 
Регистрация: 08.10.2008
Сообщений: 53
Репутация: 10

По умолчанию Re: Настройка блоков РСЯ

Цитата:
Сообщение от KGB Посмотреть сообщение
Делалось это просто изменением переменной yandex_direct_limit
Это решит проблему только с отключенной медийкой. Надо, чтобы они сделали нормальные адаптивные блоки, как в adsense.
vm66 вне форума   Ответить с цитированием
Старый 05.12.2016, 09:06   #17
KGB
Профессор
 
Регистрация: 10.08.2006
Адрес: Питер
Сообщений: 995
Репутация: 148466
Социальные сети Профиль в ВКонтакте

По умолчанию Re: Настройка блоков РСЯ

Цитата:
Сообщение от vm66 Посмотреть сообщение
Это решит проблему только с отключенной медийкой. Надо, чтобы они сделали нормальные адаптивные блоки
Да с отключенной медийкой, но не везде медийка к месту. Ну и они все рано нигде никак и никогда не сделают, например, адаптивные постеры,. А есть места, где они просятся.
KGB на форуме   Ответить с цитированием
Старый 19.12.2016, 15:12   #18
lerea
Le Nouvel Observateur
 
Аватар для lerea
 
Регистрация: 06.05.2007
Адрес: République française
Сообщений: 434
Репутация: 13467

По умолчанию Re: Настройка блоков РСЯ

Что лучше работает внутри статьи?

Сейчас ставлю ротацию трех блоков

300 для мобильных / 1 постер
336 для планшетов / 2 горизонтальных постера
728 десктоп / 3 горизонтальных постера
lerea вне форума   Ответить с цитированием
Ответ




Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Текущее время: 12:04. Часовой пояс GMT +3.

Регистрация Справка Календарь Поддержка Все разделы прочитаны