Создание и редактирование баннера
Форма предназначена для создания новых и изменения параметров существующих баннеров. Для удобства работы форма разделена на несколько закладок. Каждая закладка содержит логически сгруппированный набор полей для управления параметрами баннера.
Баннер
Закладка cлужит для задания основных параметров баннера.
— баннер не показывается;
- _self – открыть в текущем окне (по умолчанию);
- _blank – открыть в новом окне;
- _parent – открыть в своем фрейме;
- _top — во всем текущем окне браузера.
Код баннера — произвольный текст или HTML-код, который будет отображаться в качестве баннера.
- #BANNER_NAME# — имя баннера;
- #BANNER_ID# — ID баннера;
- #CONTRACT_ID# — ID контракта;
- #TYPE_SID# — тип баннера.
Параметры flash баннера
- transparent — фон страницы будет «проглядывать» через все прозрачные места баннера при отображении;
- opaque — баннер будет помещен на задний план страницы;
- window — баннер будет отображаться на странице в собственном прямоугольном окне.
- Требуемая версия flash — указывается версия Flash, необходимая для отображения баннера;
- Альтернативное изображение — задается путь к альтернативному изображению, которое будет показано в виде баннера, если отключен Flash.
- _self – открыть в текущем окне (по умолчанию);
- _blank – открыть в новом окне;
- _parent – открыть в своем фрейме;
- _top — во всем текущем окне браузера.
Код баннера — произвольный текст или HTML-код, который будет отображаться в качестве баннера.
- #BANNER_NAME# — имя баннера;
- #BANNER_ID# — ID баннера;
- #CONTRACT_ID# — ID контракта;
- #TYPE_SID# — тип баннера.
- #BANNER_NAME# — имя баннера;
- #BANNER_ID# — ID баннера;
- #CONTRACT_ID# — ID контракта;
- #TYPE_SID# — тип баннера.
- Подтвержден – в данном статусе баннер доступен для показа на сайте;
- На рассмотрении – данный статус не позволяет показывать баннер на сайте и означает, что баннер необходимо либо перевести в статус Подтвержден, либо в статус Отклонен;
- Отклонен – в данном статусе баннер не может быть показан на сайте.
Ограничения
Закладка служит для задания ограничений на показ баннера.
- указать Интервал показа (DD.MM.YYYY);
- отметить опцию Фиксировать число показов баннера;
- задать Максимальное число показов баннера.
Указывается максимальное число посетителей, для которых будет показан баннер.
При редактировании баннера рядом с данным полем отображается число посетителей, которым был показан баннер. Чтобы обнулить показатели счетчика, установите флаг в поле сбросить и нажмите кнопку Применить.
Это поле будет активно только при отмеченной опции Фиксировать число показов баннера.
Указывается максимальное число показов данного баннера одному посетителю. Считается, что оптимальным количество показов баннера одному посетителю равно 4.
Это поле будет активно только при отмеченной опции Фиксировать число показов баннера.
Указывается максимально число показов баннера, при достижении которого баннер становится неактивным.
При редактировании баннера рядом с данным полем отображается число выполненных показов баннера. Чтобы обнулить показатели счетчика, установите флаг в поле сбросить и нажмите кнопку Применить.
Это поле будет активно только при отмеченной опции Фиксировать число показов баннера.
Таргетинг
Закладка служит для настройки таргетинга рекламы. Диапазон доступных значений полей зависит от настроек контракта, к которому относиться данный баннер.
- если для страницы сайта заданы желательные ключевые слова, то баннер будет показан на странице в том случае, если хотя бы одно ключевое слово баннера присутствует в наборе желательных ключевых слов страницы;
- если для страницы сайта заданы обязательные ключевые слова, то баннер будет показан на странице в том случае, если набор ключевых слов баннера совпадает с набором обязательных ключевых слов страницы.
- всем — показывать баннер всем посетителям сайта;
- только новым — показывать баннер пользователям, впервые пришедшим на сайт;
- только вернувшимся — показывать баннер пользователям, вернувшимся на сайт.
Примечание: наличие слэша в конце адреса влияет на выбор каталогов системой, так как включаются все адреса, начинающиеся с указанной строки.
- Если ввести: www.mysite.ru/dir/, то под условие будут подходить все страницы из разделов www.mysite.ru/dir/, www.mysite.ru/dir/other/ и т.п.
- Если ввести www.mysite.ru/dir, то под условие будут подходить все страницы предыдущего примера, плюс к ним добавятся разделы вида www.mysite.ru/dir_another, www.mysite.ru/directory, и т.п., то есть, отношения к каталогу dir не имеющие.
Статистика
Внимание! С версии 21.100.0 модуля Реклама, баннеры убрана возможность фиксировать статистику по кликам на баннеры, т.е. вкладка Статистика в форме настроек баннера более НЕ доступна. Возможность считать клики на баннер оставлена в API (требуется написание своего скрипта для подсчета ссылок).
Закладка служит для управления параметрами регистрации кликов на баннер в модуле Веб-аналитика. Управление параметрами доступно только администраторам сайта.
- #BANNER_NAME# — имя баннера;
- #BANNER_ID# — ID баннера;
- #CONTRACT_ID# — ID контракта;
- #TYPE_SID# — тип баннера.
Комментарий
Закладка предназначена для создания произвольного комментария к баннеру.
Кнопки управления
| Кнопка | Описание |
|---|---|
| Сохранить | Сохранение внесённых изменений. Переход на страницу со списком баннеров. |
| Применить | Сохранение внесённых изменений. Продолжение редактирования параметров баннера. |
| Отменить | Отмена внесённых изменений. Возврат первоначальных значений параметров. |
Смотрите также
Управление баннерами
Элементы баннеров (изображение, заголовок, описание) хранятся в карточках. В решении используется 3 вида карточек для баннеров, отображаемых на главной странице:
- Первый вид помогает создавать основные, верхние и плавающие баннеры;
- Второй – маленькие баннеры, баннеры в виде тизеров и широкие баннеры внизу страницы;
- Третий – внутренние баннеры.
В режиме редактирования в публичной части сайта при наведении указателя на область одного из баннеров всплывает меню с кнопками управления, позволяющими изменить (1), добавить новый баннер (2) или удалить баннер (3).
Примечание: При использовании типа страницы №2 с активными верхними баннерами при наведении указателя выделяется область, включающая и основные баннеры, и верхние (те, что по бокам). На всплывающем меню кнопки изменения и удаления будут действовать на основной баннер. Те же действия над верхними баннерами можно осуществить только в административной части сайта. В остальных случаях озвученные элементы управления производят действия над теми баннерами, над которыми они появились.Текст сообщения.
Кнопка «Добавить баннер» позволяет создать любой новый баннер того же вида. Это значит, что вы можете навести указатель, например, на область основного баннера и создать новый элемент в блоке плавающих баннеров, заполнив карточку определенным образом. И наоборот, используя элемент управления над блоком плавающих баннеров, добавить основной баннер.
Если вы хотите, чтобы все баннеры были рассортированы в административной части строго по подвидам, не следует использовать особенность, обозначенную выше, на баннерах второго вида, а при создании элементов первого вида – обращайте внимание на поля, определяющие тип и раздел в карточке элемента.
Для работы со списками баннеров первого вида в административной части сайта перейдите в Контент → Реклама (aspro.next) → Баннеры. Здесь выберите ветку, соответствующую одному из редактируемых подвидов. Например, для того, чтобы отключить отображение баннеров по бокам от основного, раскройте «Верхние баннеры».

Отключить верхний баннер без удаления из базы можно при помощи пункта «Деактивировать» (3) в меню кнопки «Гамбургер». С помощью других пунктов этого же меню можно изменить баннер (2) или удалить его (4). Используйте кнопку «Добавить баннер» (1) для создания нового элемента.
Карточка баннера первого вида состоит из вкладок: «Баннер», «Анонс», «Подробно», «SEO», «Реклама», «Разделы». Содержимое вкладок «SEO» и «Реклама» не относятся к рассматриваемой теме, поэтому их описание в рамках урока отсутствует.
На вкладке «Баннер» общими для основных, верхних и плавающих баннеров являются поля:

- Активность (1) – делает баннер видимым на главной странице;
- Начало и окончание активности (2) – задает временной интервал, в котором баннер будет доступен для просмотра;
- Название (3) – содержит текст заголовка, отображаемого на баннере (поле обязательно для заполнения);
- Сортировка (4) – задает порядок отображения баннеров на странице;
- Тип баннера (5) – является одним из ключевых полей при создании баннера. Меняя значение в этом поле, вы определяете в каком блоке баннер будет отображаться. Чтобы установить нужный тип, нажмите кнопку с многоточием и выберите в новом окне соответствующий пункт: баннер сверху, основной или плавающий.
- Расположение текста (6) – определяет где будет находиться заголовок и подпись на баннере: справа, слева, по центру или вовсе будет отключен;
- Тип перехода (7) – устанавливает, как будет открываться ссылка, привязанная к баннеру: в новом окне или текущем;
- Цвет текста (8) – задает в верхнем и плавающем баннере цвет заголовка, в основном баннере влияет также и на описание;
- Для основных баннеров дополнительно можно задать светлый или темный цвет точек навигации (9), чтобы они не терялись на фоне баннера;
- Для верхних и плавающих баннеров заполняется поле «Ссылка с баннера» (10). Если поле оставить пустым, пользователь не сможет получить никакой дополнительной информации, кликнув по нему. Баннер будет использоваться только для красоты.
Группа полей внизу карточки (12) позволяет разместить на баннере кнопки и привязать к ним страницы сайта с перечнем товаров или подробной информацией.

- Используя поле «Размер баннера» (11), баннер при 1 типе главной может быть расположен во всю страницу или нет.
В поле описания анонса вы также можете разместить короткий текст, который будет отображаться под заголовком на основном баннере.

Чтобы не потерять новый баннер в админке, соотнесите его с нужным разделом в списке одноименной вкладки.
Маленькие и широкие баннеры внизу страницы в публичной части можно только добавить. Их изменение, удаление и деактивация доступны в административной части сайта. Принцип управления карточками одинаков для обоих видов.
Перейдите в Контент → Реклама (aspro.tires2) → Реклама – На главной. Подвиды расположены в соответствующих разделах.
Если вы откроете карточку одного из таких баннеров, то заметите, что полей для заполнения в ней меньше.

- активировать отображение баннера (1) ;
- дать баннеру название (2) – поле является обязательным, отображается только с баннерами-тизерами;
- задать порядковый номер среди других баннеров того же подвида (3);
- установить тип баннера (4) и тем самым включить его отображение в нужном блоке;

- установить изображение (5);
- связать с одной из страниц сайта (6);
- задать краткое описание (7) – поддерживается только баннерами-тизерами.
Блок «Тизеры»
Настройки списка тизеров осуществляется аналогично интернет-магазину Аспро: Next. Вы можете ознакомиться с курсом управления тизерами.
Блок «О компании»
В блоке, расположенном внизу главной страницы, с текстом, приветствующим посетителя на сайте или рассказывающем информацию о компании, можно загружать свое изображение и вставлять свой текст.
Для замены изображения перейдите в режим правки, наведите указатель на картинку и нажмите на всплывающем меню «Редактировать Изображение компании как html».
Чтобы удалить существующее изображение кликните по нему левой кнопкой мыши и нажмите клавишу Backspace. Для вставки новой картинки кликните иконку «Изображение» на панели визуального редактора.
В открывшемся окне укажите источник изображения. Нажмите кнопку с многоточием для перехода к работе с медиабиблиотекой.

Подробнее о медиабиблиотеке вы можете узнать из этого урока.
Если вы не используете мультирегиональность, отредактировать текст можно также в режиме правки, вызвав редактор кнопкой «Изменить область» на всплывающем
меню.

В открывшемся окне вы сможете отредактировать заголовок и текстовое содержимое блока «О компании»

Если вы используете разные версии сайта для регионов, текст в блоке нужно редактировать для каждого города отдельно. Это можно осуществить только в админке.
Откройте вкладку «Контент». Перейдите в Региональность (tires2) → Регионы. Выберите нужный раздел и найдите в списке город, для которого требуется изменить описание. Например, Урал → Челябинская область → Челябинск. Кликните кнопку Гамбургер и выберите «Изменить».

Текст для главной страницы находится на вкладке «Информация». Здесь вы можете переключаться между режимами редактирования: включить режим «Текст» для того, чтобы очистить скопированный текст от форматирования, затем использовать визуальный редактор для придания тексту необходимого стиля или оформить его непосредственно HTML тегами.
Настройка заголовков и количества элементов в блоках
О настройках заголовков и количества элементов в блоках можно ознакомиться на примере Аспро: Next.
Стоит обратить внимание на особенный блок популярных категорий. Чтобы его вывести, необходимо на вкладке промо-блоки включить пункт «Выводить на главной».

Нажимаем «Сохранить» и смотрим результат.
Как изменить баннер в битрикс
Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы ( Marketplace > Обновление платформы ).
Старт, Стандарт, Малый бизнес
Работа с рекламными баннерами выполняется на странице Баннеры ( Маркетинг > Баннерная реклама > Баннеры ):
Именно на этой странице вы можете создать 1 , отредактировать 2 или удалить баннер 3 .
Как создать и настроить баннер?

- Откройте страницу со списком баннеров.
- Нажмите кнопку Добавить баннер на контекстной панели и выберите созданный ранее контракт (или системный контракт Default).
- Заполните поля формы, которая состоит из следующих закладок:
- Баннер — на закладке задаются основные параметры. Каждый баннер характеризуется следующими признаками: типом, группой, статусом, контрактом. Подробнее читайте в уроке Основные настройки баннера.
- Ограничения — при выключении опции Фиксировать число показов баннера подсчет числа показа не ведется. Поля ограничения показов при этом не будут активными. Поле Показывать баннеры с равномерной скоростью позволяет быстро отключить ограничения показа по времени суток и дням недели, которое задается на закладке Таргетинг. Если баннер один в контракте, то ограничения в полях:
- Максимальное число посетителей, для которых он будет показан,
- Максимальное число показов данного баннера одному посетителю,
- Максимальное число показов баннера.
должны соответствовать ограничениям контракта. Если баннеров в рамках контракта несколько, то сумма аналогичных полей всех них должна соответствовать значению аналогичного поля контракта.
Также на закладке Ограничения можно разрешить фиксирование кликов С версии 21.100.0 модуля Реклама, баннеры убрана возможность фиксировать статистику по кликам на баннеры, поэтому данный функционал недоступен. по баннеру и ограничить число этих кликов.
Примечание: в форме создания баннера нет обязательных для заполнения полей, то есть он создастся, даже если просто открыть и сохранить форму.
Примечание: До версии 21.100.0 модуля Реклама, баннеры в форме создания баннера была доступна закладка Статистика. Подробнее о ней читайте в отдельном уроке Статистика. С версии 21.100.0 закладка более НЕ доступна.
7 смертных грехов разработки на 1С-Битрикс

1. Изменять все стандартное/Изменять содержимое папки bitrix
Изменение всего, что лежит в папке /bitrix/ — табу. Если вам нужно изменить шаблон компонента — копируйте его в шаблон сайта. Если вам нужно изменить компонент — используйте result_modifier.php, component_epilog.php (про них я подробно писал в этой статье), напишите свой компонент, в конце концов. Если вам нужно изменить модуль — медицина бессильна пишите свой, наследуйтесь от стандартных. Если вы не послушаетесь и дадите слабину хотя бы в одном – можете попрощаться с беззаботным обновлением платформы. А такая необходимость рано или поздно настанет. Не говоря о том, что искать файлы будет сложнее. Для пользовательских модулей/компонентов/шаблонов/обработчиков должна использоваться папка /local/. Добавляйте папку /bitrix/ в .gitignore. Если в вашем git репозитории есть файлы /bitrix/, значит, скорее всего, что-то вы делаете не так. Вы можете подумать, что есть исключения. Да, но прибегать к созданию чего-либо в папке Bitrix нужно только если по-другому никак.
2. Получать данные в template.php
Никогда, слышите, никогда не делайте этого! Я говорю о CIBlockElement::GetList (и подобных им функциях) в template.php. Если вам нужно получить какие-то дополнительные данные используйте result_modifier.php или component_epilog.php. Серьезно. Все что Вам нужно — лишь создать файл в папке шаблона. Это займет не на много больше времени, чем писать код в самом шаблоне. Шаблон должен быть использован только для вывода информации. Ни для чего больше. Если вычисления (получение дополнительных данных, их модификация) находятся в шаблоне, вы становитесь сильно зависимы от порядка выполнения кода. Допустим, необходимо посчитать общее количество просмотров всех статей на странице и вывести значение. Если вы разместите вычисления в цикле вывода статей, полученное значение можно будет использовать только после последней статьи. Простая задача по переносу блока наверх страницы превратится в ад.
3. Неверное подключение скриптов и стилей сайта
Откройте свой сайт, найдите основной шаблон и откройте файл header.php. Если вы видите что-то похожее — гоните Вашего разработчика взашей. В Битриксе вполне неплохой механизм автоматического объединения и минификации скриптов, кроме того, Битрикс умеет перемещать JS в конец страницы, благодаря чему сайт быстрее грузится. Если кто вдруг не знал, вся эта годнота включается в настройках Главного модуля:
А теперь барабанная дробь. Ничего не получится, если вы подключали скрипты и стили дедовским способом. Соберите скрипты из шаблона сайта, поместите их в JS файл, а потом подключите его с помощью AddHeadScript() . Тоже самое касается и стилей. Если вам необходимо подключить стили, вынесите их в отдельный файл, а потом используйте SetAdditionalCSS() . В итоге получится нечто похожее:
. или, если вы используете D7, так:
4. Неверное подключение скриптов и стилей компонента
Если с предыдущим пунктом все более-менее просто, исправить эту проблему гораздо сложнее. Давайте разбираться. Допустим, для главной страницы сайта необходимо разработать слайдер с баннерами. Ок. Что может быть проще. И Вы правильно подумали, что переносить стили (и скрипты) в основной шаблон сайта (/local/templates/[ваш сайт]/template_styles.css и /local/templats/[ваш сайт]/script.js) не стоит — иначе они будут подключаться на каждой странице. Но многие разработчики просто помещают css и js в файл template.php шаблона компонента и на этом успокаиваются. Правильным же подходом будет создание файлов script.js и style.css в папке шаблона. Они подключатся автоматически и избавят от головной боли при разработке.
5. Отключение кеширования
Кеширование позволяет значительно снизить нагрузку на БД. Это более остро чувствуется при росте аудитории (и соответственно запросов к БД). Обычная ситуация: верстальщику не нравится, что изменения стилей отображаются не сразу и он решает отключить кеширование отдельного компонента. Работа кипит, сроки горят и он (верстальщик) просто забывает включить кеширование обратно. Проходит время и страницы сайта начинают грузиться все дольше и дольше. Мой совет: перед сдачей проекта прогнать сайт через монитор производительности. Он покажет ошибки в разработке и вам не придется искать проблемные компоненты вручную.
6. Вложенные циклы при получении элементов инфоблока
Очень часто при разработке нового компонента возникает необходимость получать данные из двух (или больше) связанных Инфоблоков. Давайте рассмотрим пример: нужно получить список всех деталей, подходящих ко моделям автомобилей.
$dbModels = CIBlockElement::GetList( array( 'SORT' => 'ASC', 'NAME' => 'ASC', ), array( 'IBLOCK_ID' => MODELS_IBLOCK, 'ACTIVE' => 'Y', ), false, false, array( 'ID', 'NAME', ) ); while ($arModels = $dbModels->GetNext()) < $dbItem = CBIBlockElement::GetList( array( 'SORT' =>'ASC', 'NAME' => 'ASC', ), array( 'IBLOCK_ID' => ITEMS_IBLOCK, 'ACTIVE' => 'Y', 'PROPERTY_MODELS_VALUE' => $arModels['ID'], ), false, false, array( 'NAME', 'PROPERTY_COUNT', 'PROPERTY_PRICE', ) ); while ($arItem = $dbItem->GetNext()) < // TODO: какая-то работа >>
Код упрощен для простоты восприятия, матерые разработчики найдут в нем сразу несколько ошибок;) Суть в чем: чем больше на сайте будет моделей, тем больше будет SQLзапросов с получением данных о запчастях. Более правильным был бы такой вариант:
$dbModels = CIBlockElement::GetList( array( 'SORT' => 'ASC', 'NAME' => 'ASC', ), array( 'IBLOCK_ID' => MODELS_IBLOCK, 'ACTIVE' => 'Y', ), false, false, array( 'ID', 'NAME', ) ); while ($arModels = $dbModels->GetNext()) < $modelIDs[] = $arModels['ID']; >$dbItem = CBIBlockElement::GetList( array( 'SORT' => 'ASC', 'NAME' => 'ASC', ), array( 'IBLOCK_ID' => ITEMS_IBLOCK, 'ACTIVE' => 'Y', 'PROPERTY_MODELS_VALUE' => $modelIDs, ), false, false, array( 'NAME', 'PROPERTY_COUNT', 'PROPERTY_PRICE', ) ); while ($arItem = $dbItem->GetNext()) < // TODO: какая-то работа >
- Использование сортировки там, где она не нужна;
- Получение всех полей и свойств, даже если они не используются;
- Программная реализация постраничной навигации (вместо механизма Битрикс);
- Получение данных без учета активности элемента, раздела или дат активности и тд.
Перечислять все ушло бы очень много времени.
7. Бездумная разработка компонентов Bitrix
Не самым лучшим решением будет разрабатывать сайт целиком на самописных компонентах. Мотивация может быть разная: «Стандартный компонент делает слишком мало», «Стандартный компонент делает слишком много», «Шаблон слишком массивный, а в данных не разобраться», «Работает не так как я хочу», «Работает так как я хочу, но не очень».
Почему не стоит делать это? По целому ряду причин:
- От ошибок никто не застрахован. Но в случае стандартных компонентов можно расcчитывать, что их рано или поздно исправят, а ваша (если вы разработчик) ответственность закончится после сдачи проекта.
- Компоненты Битрикс в некоторых случаях сложны и запутаны. Сделано это ради гибкости. Уверен, если делать упор на универсальность, в конечном итоге компонент получится похожим на стандартный (а то и будет еще запутаннее:)).
- Если в будущем изменится структура данных, логика работы, а бОльшая часть сайта была написана сторонними разработчиками, поддержка проекта превратится в настоящий ад с постоянным переписыванием десятка компонентов.
В общем, прежде чем приступить к созданию очередного компонента, задайте себе вопрос: «А не возникнет ли проблем у Заказчика через год или два?».
Вместо заключения
Конечно, это лишь малая часть тех ужасов, с которыми приходится сталкиваться, получая очередной проект на поддержку. Я постарался собрать самые часто встречаемые.