
Внутри административной части вы управляете текстом, ссылкой, цветами, размерами и графикой (в том числе WebPизображениями для лучшей производительности), а также можете включать или отключать показ баннера без участия разработчика.
Для каких задач подходит модуль
- Анонс сезонных или ограниченных по времени акций (распродажи, новинки, «последние места» и т.п.).
- Уведомление о важных изменениях: новые условия доставки, обновление ассортимента, изменение режима работы.
- Перенаправление трафика на целевые посадочные страницы: лендинги, страницы распродаж, вебинары, спецпроекты.
- Подсветка ключевых офферов для мобильных пользователей, которые не всегда видят всё, что размещено «ниже первого экрана».
Ключевые преимущества для бизнеса
- Гибкая визуальная настройка без верстки. В админке вы указываете цвета фона и текста, скругление углов, отступы, ширину контейнера и высоту блока; можно включить фонкартинку (слева/справа/по центру) или использовать сплошную заливку.
- Поддержка изображений JPG, PNG и WebP. Для центрального фонового блока предусмотрена загрузка отдельной картинки, в том числе в формате WebP, что позволяет ускорить загрузку баннера и сохранить высокое качество.
- Разделение сценариев по устройствам. В настройках указывается, кому показывать баннер: всем, только настольным пользователям или только мобильным устройствам — фильтрация выполняется по User-Agent и простым признакам мобильных браузеров.
- Корректная работа с любым шаблоном. Баннер встраивается уже после генерации контента: модуль анализирует итоговый HTML и вставляет свой блок в <body> (в верхнюю или нижнюю часть), не требуя правки шаблонных файлов.
Как настроить модуль (пошагово)
1. Включите модуль и откройте настройки.
После установки зайдите в Настройки -> Настройки продукта -> Настройки модулей -> Goodsol: Промобаннер (или через пункт меню в разделе «Сервисы», если он подключен в adminменю).
2. Активируйте показ баннера.
Установите флаг «Активность» — именно это значение проверяется в обработчиках OnEpilog/OnEndBufferContent и определяет, будет ли баннер добавляться к выходящему HTML.
3. Выберите устройства и позицию.
В блоке «Устройства» укажите, кому показывать баннер: всем, только desktop или только mobile. Ниже выберите позицию: «Сверху» (класс gs-promo-top) или «Снизу» (класс gs-promo-bottom) — от этого зависит CSSпозиционирование контейнера.
4. Настройте внешний вид.
- Укажите ширину (фиксированную или на всю ширину) и минимальную высоту блока.
- Задайте отступы сверху/снизу и радиус скругления (в пикселях).
- Выберите режим изображения: без картинки, картинка по бокам или центральный фон, для которого можно загрузить отдельные файлы под desktop и mobile.
5. Загрузите изображения (по необходимости).
Для центрального фонового режима загрузите изображение формата JPG, PNG или WebP; для мобильной версии можно задать отдельный файл, который будет использоваться при меньшей ширине экрана.
6. Заполните текст и ссылку.
В поле «Текст баннера» укажите короткий, но информативный оффер — он будет выводиться внутри блока. В поле «Ссылка» укажите URL целевой страницы; при наличии ссылки вся внутренняя область баннера становится кликабельной.
7. Сохраните настройки и проверьте сайт.
Нажмите «Сохранить». Откройте главную страницу сайта в режиме обычного пользователя (не в админке) и убедитесь, что баннер отображается корректно в выбранной позиции и на нужных устройствах.
FAQ для модуля «Goodsol: Промобаннер».
1. Где включается и выключается промобаннер?
Управление модулем находится в разделе Настройки -> Настройки продукта -> Настройки модулей -> Goodsol: Промобаннер. Включение/выключение выполняется через флаг «Активность» в настройках модуля.
2. Можно ли показывать баннер только на мобильных или только на десктопе?
Да. В настройках модуля есть параметр «Устройства», где можно выбрать: показывать всем, только desktop или только mobile. Определение устройства выполняется по User-Agent и простым признакам мобильных браузеров.
3. Как задать позицию баннера — сверху или снизу экрана?
В блоке настроек позиции есть поле position с вариантами top или bottom. В зависимости от выбранного значения модуль применяет CSSклассы gs-promo-top или gs-promo-bottom и вставляет баннер в начало или конец <body>.
4. Какие форматы изображений поддерживаются в баннере?
Для центрального фонового изображения можно загружать файлы в форматах JPG, PNG и WebP. Для боковых изображений используются PNG.
5. Можно ли задать разные картинки для десктопной и мобильной версии?
Да. В режиме «центральный фон» доступна отдельная загрузка изображений для desktop и для mobile (imagecenter и imagecentermobile). Для мобильных устройств модуль подставляет путь --gs-promo-bg-mobile, если он задан, иначе используется desktopфон.
6. Как скрыть баннер для пользователя после нажатия на крестик?
Скрипт модуля сохраняет факт закрытия баннера в cookie с ключом, завязанным на идентификатор баннера (bannerId gspromo_...). Если cookie содержит признак closed, при следующей загрузке страницы баннер скрывается на заданный период (по умолчанию сутки).
7. Влияет ли баннер на верстку сайта и шаблон?
Нет. Модуль не требует правки шаблонов. Он подключает CSS через Asset::addCss, а HTMLструктуру баннера вставляет в финальный буфер страницы в обработчике OnEndBufferContent, модифицируя уже готовый content (через preg_replace или str_replace по тегу <body>).
8. Можно ли ограничить ширину баннера и выровнять его по центру?
Да. В настройках есть параметр «Ширина контейнера» (containerWidth в пикселях). Если задана фиксированная ширина, модуль выставляет max-width и центрует блок за счет margin: 0 auto, при этом сама обертка тянется на всю ширину окна.
9. Что будет, если я поменяю режим изображения с «фон» на «без картинки»?
В этом случае модуль перестанет подставлять URLфон в стиле background-image и будет использовать только цветовую заливку (background-color) и цвет текста (color). Загруженные файлы остаются в настройках и могут быть использованы позже, если вы вернете прежний режим.
10. Работает ли баннер в админке и при AJAXзапросах?
Для административной части и AJAXответов баннер принудительно отключен. В OnEndBufferContent стоит проверка на ADMIN_SECTION и isAjaxRequest(), поэтому модуль не вмешивается в HTMLвывод админки и не ломает JSONответы и HTMLфрагменты для AJAX.
