Практически на каждом проекте есть рекламные блоки. И чаще всего это не рекламные площадки с продажей мест и отчетностью рекламодателям, а продающие блоки. И как быть, если у вас редакция без модуля ? Можно конечно использовать стандартные компоненты новостей, заточенные под вывод одного элемента, но если реклама раскидана по странице, это уже сильно усложнит решение. призван упростить такие интеграции.
[spoiler]
Сначала я обратил внимание на модуль коллег . Меня остановила не цена, а неудобная интеграция на мой взгляд. Для каждого рекламного блока нужно ставить компонент, настраивать. Поэтому, решил сделать свое.
Я руководствовался главным принципом, вынесенным в первые предложения - отчетности и графики нужны крайне редки. А если до этого доходит дело, уже проще перейти на высшую редакцию, ибо там еще и Аналитика, которая даст много плюсов Рекламе. Либо купить модуль коллег выше.
А поэтому, достаточно ограничиться инфоблоком, где и будут храниться данные

Такая форма создается автоматически, сразу настроенная и с нужными полям. Если указан HTML-код, он будет использоваться как баннер. Иначе - картинка.
Интеграция в шаблон также предельно проста и знакома вам:

Результат - баннеры выводятся на своих местах в ротации:

Вот собственно и все, теперь об интеграции:
Модуль платный, цена 1000 руб, партнерские скидки включены.
[spoiler]
Сначала я обратил внимание на модуль коллег . Меня остановила не цена, а неудобная интеграция на мой взгляд. Для каждого рекламного блока нужно ставить компонент, настраивать. Поэтому, решил сделать свое.
Я руководствовался главным принципом, вынесенным в первые предложения - отчетности и графики нужны крайне редки. А если до этого доходит дело, уже проще перейти на высшую редакцию, ибо там еще и Аналитика, которая даст много плюсов Рекламе. Либо купить модуль коллег выше.
А поэтому, достаточно ограничиться инфоблоком, где и будут храниться данные

Такая форма создается автоматически, сразу настроенная и с нужными полям. Если указан HTML-код, он будет использоваться как баннер. Иначе - картинка.
Интеграция в шаблон также предельно проста и знакома вам:

Результат - баннеры выводятся на своих местах в ротации:

Вот собственно и все, теперь об интеграции:
- Ставим модуль.
- В настройках создаем инфоблок.
- В настройках инфоблока создаем нужные типы баннеров

- Интегрируем нужные типы в нужные места в шаблоне сайта или компонент:Как видите, MAIN_TOP - это один из типов выше.
<?CASDAdvMini::Show('MAIN_TOP');?> - Метод выше может принимать еще второй параметр, массив, в котором можно указать:
<?CASDAdvMini::Show('MAIN_TOP', array( 'class' => '',//css-класс, который будет прописан ссылке 'before' => '',//если баннер есть, до него будет вставлен этот текст 'after' => ''//если баннер есть, после него будет вставлен этот текст ));?>
- Все активные баннеры собираются в единый массив и кешируются на час. Потом из этого кеша и происходит ротация.
- Кеш тегированный конкретным инфоблоком. Добавляете / изменяете баннеры - кеш сбрасывается.
- Не удалять модуль пока вы не удалите коды вставок баннеров.
- Использовать для вставки безопасную конструкцию, которая будет работать всегда, а если модуль не установлен, то просто ничего не выведетгде $type - это тип баннера выше, $arParams - массив с параметрами выше.
<?$GLOBALS['APPLICATION']->AddBufferContent(array('CASDAdvMini', 'ShowDelay'), $type, $arParams);?>
Модуль платный, цена 1000 руб, партнерские скидки включены.