В модуле «Реклама» 1С-Битрикс несколько баннеров одной зоны показываются по очереди — этот процесс называют ротацией. Распределением показов между ними управляет параметр вес (приоритет) баннера.
Что такое ротация и вес баннера
Рекламная зона (тип баннера) — это место на странице, куда компонент advertising.banner выводит один баннер из множества доступных. Если под условия зоны подходит несколько активных баннеров, при каждой загрузке страницы система выбирает один из них. Такое чередование и есть ротация.
Выбор не случаен в равных долях: он взвешенный. Каждому баннеру можно назначить вес (в интерфейсе — поле «Сортировка» / приоритет показа). Чем больше вес, тем выше вероятность, что при очередной загрузке будет показан именно этот баннер.
- Зона (тип баннера) — группирует баннеры, конкурирующие за одно место.
- Вес — относительный приоритет внутри зоны.
- Ротация — механизм выбора одного баннера при каждом показе.
Как работает алгоритм взвешенного показа
Алгоритм ротации вероятностный. Система суммирует веса всех баннеров, подходящих под зону и активных в данный момент, и распределяет показы пропорционально этим весам.
Пример: в зоне три активных баннера с весами 10, 20 и 70. Сумма весов — 100. Тогда доли показов распределятся так:
| Баннер | Вес | Доля показов |
|---|---|---|
| Баннер A | 10 | 10% |
| Баннер B | 20 | 20% |
| Баннер C | 70 | 70% |
Важно понимать: это вероятность на каждый показ, а не жёсткая квота. На малом числе загрузок фактическое распределение может отличаться от расчётного, но с ростом трафика оно сходится к заданным долям.
Настройка веса баннера
Вес задаётся индивидуально для каждого баннера на форме его редактирования.
- Перейдите в Сервисы → Реклама, баннеры → Баннеры.
- Откройте нужный баннер на редактирование (или создайте новый).
- На вкладке параметров найдите поле «Сортировка» (приоритет показа) — это и есть вес.
- Укажите числовое значение: чем оно больше относительно других баннеров зоны, тем чаще будет показ.
- Убедитесь, что баннер активен и относится к нужному типу (зоне).
- Сохраните изменения.
Рекомендуется задавать веса в единой шкале для всей зоны, например кратно 10 или в диапазоне 1–100, — так проще прикинуть итоговые доли показов и позже их корректировать.
Лимиты показов и их влияние на ротацию
Вес — не единственный фактор. У баннера есть ограничения, которые могут вывести его из ротации, даже если вес большой:
- Период показа — даты начала и окончания. Вне интервала баннер не участвует в ротации.
- Лимит показов — максимальное число показов; по исчерпании баннер деактивируется.
- Лимит переходов (кликов) — аналогично, по достижению баннер снимается с показа.
- Максимум показов в день — распределяет открутку баннера во времени.
Когда баннер исчерпывает лимит или выходит за период, он покидает пул зоны. Сумма весов пересчитывается по оставшимся активным баннерам, и их доли автоматически возрастают. Это нормальное поведение: следите за статусом баннеров, чтобы понимать, почему меняется фактическое распределение.
Контракты, приоритет и фиксированные показы
Баннеры объединяются в контракты — рекламные размещения с общими условиями. У контракта тоже есть приоритет, и он влияет на порядок выборки до применения весов баннеров.
- Сначала система отбирает баннеры по контрактам с более высоким приоритетом.
- Внутри одного уровня приоритета работает взвешенная ротация по весам баннеров.
- Для гарантированных размещений используйте отдельный контракт с высоким приоритетом, чтобы такой баннер не «размывался» весами остальных.
Так решается типичная задача: часть площади нужно отдать оплаченному размещению без потерь, а оставшиеся показы распределять между внутренними баннерами по весу.
Частые ошибки
Что чаще всего приводит к неожиданному распределению показов:
- Ожидание точных квот на малом трафике. Веса задают вероятность, а не строгую очередь. На десятках загрузок отклонения нормальны.
- Кеширование страницы или компонента. Если страница закеширована, баннер «замирает» и ротация визуально не работает. Настройте параметры кеширования компонента
advertising.bannerили отключите кеш для зоны. - Забытые лимиты. Баннер незаметно исчерпал лимит показов или вышел за дату — доля остальных выросла, а причину ищут в весах.
- Разнобой в шкале весов. Один баннер с весом 5, другой с весом 5000 — второй заберёт почти все показы. Держите значения в одном порядке.
- Неверный тип (зона). Баннер привязан не к той зоне и не конкурирует там, где ожидалось.
- Неучтённое таргетирование. Условия показа (группы, страницы, параметры) сокращают пул подходящих баннеров, меняя фактические доли.
Проверка распределения показов
Убедиться, что вес работает как задумано, помогает статистика модуля.
- Откройте Сервисы → Реклама, баннеры → Статистика.
- Отфильтруйте по нужной зоне (типу баннера) и периоду.
- Сравните долю показов каждого баннера с расчётной по весам.
- При заметном расхождении проверьте лимиты, даты, таргетирование и кеширование.
Для наглядности сначала тестируйте на странице с отключённым кешем и достаточным числом обновлений — так вероятностный алгоритм успеет проявиться.
Итог
Ротация в модуле «Реклама» 1С-Битрикс — это взвешенный вероятностный показ баннеров одной зоны. Вес задаёт относительную частоту показа, доли распределяются пропорционально сумме весов активных баннеров.
Чтобы распределение было предсказуемым: держите веса в единой шкале, следите за лимитами и периодами, для гарантированных размещений используйте контракты с приоритетом, учитывайте кеширование и проверяйте результат по статистике модуля.