990
11.93
14.14
за сайт
- Проверено Modstore
- Бесплатные будущие обновления
- Работа на тестовом и публичном домене
- 12 месяцев тех. поддержки
Версия
1.0.0-beta1
Дата выпуска
05.08.2026
Загрузки
0
Просмотры
56
Внимание, этот компонент требует PHP
8.2
или выше!
Внимание, этот компонент требует MODX 3 или выше.
BannerPro для MODX Revolution 3.x. Связываете баннеры и позиции в админке, выводите сниппетом на сайте. Компонент считает клики и показы. Отчёты: CTR, рефереры, CSV. Интерфейс на Vue 3 + PrimeVue.
Админка (Vue 3 + PrimeVue)
Сайт
Аналитика и интеграции
MiniShop3 (опционально)
REST API v1.1
Требования
Скриншоты





Админка (Vue 3 + PrimeVue)
- вкладки: Баннеры, Позиции, Статистика, Журнал, Настройки
- виджет «Последние 7 дней»: клики, показы, CTR над вкладками
- баннеры: image/html, превью (миниатюра или iframe sandbox), создание из preset-шаблонов
- форма в три вкладки: основное, показ (даты, dayparting, лимиты), таргетинг (страница, раздел, метки, MS3)
- список: поиск, фильтры (активность, тип, товар, категория, метка, позиция), пагинация, сортировка
- bulk: вкл/выкл, удаление, назначение позиций; дублирование баннера и позиции
- позиции: слоты по контексту MODX, DnD порядок, вес связи для weighted-ротации
- статистика: KPI (CTR, CVR, заказы MS3), воронка, сравнение с прошлой неделей, топ баннеров, рефереры, CSV
- журнал audit изменений; UTM, webhook и TTL cookie A/B во вкладке «Настройки»
- чеклист первой настройки; локализация ru / en / uk
- ACL: bannerpro_save, bannerpro_remove, bannerpro_stats — режим «только статистика»
Сайт
- сниппет BannerPro (pdoFetch): positionName, position, context, productId
- чанки byAd, byHtml, отдельные tpl для image/html, обёртка tplWrapper
- ротация: RAND(), idx, weighted, A/B split (sortby=ab, cookie)
- расписание start/end, dayparting (show_hours), лимиты max_clicks / max_impressions
- таргетинг: ресурс, родитель, метки (tagsMode any/all), контекст позиции
- кэш HTML (bannerpro_cache), плейсхолдер {$click_url}, плейсхолдер adposition для клика
- плагины: BannerProClickout (клики), BannerProImpression (показы, pixel + IntersectionObserver)
Аналитика и интеграции
- клики и показы: 1 IP / сутки на пару баннер+позиция; рефереры; фильтр ботов (CrawlerDetect)
- события MODX: OnBannerProClick, OnBannerProImpression
- UTM на redirect; webhook HTTP с HMAC на клик и показ
- GA4, Matomo, Яндекс Метрика через плагин BannerProAnalytics и analytics.js
MiniShop3 (опционально)
- привязка баннера к товару или категории; плейсхолдеры product_* в чанках
- сниппет productId — глобальные + товарные баннеры на карточке
- атрибуция клик → заказ; колонки «Клики» и «Заказы» в списке баннеров; CVR в статистике
- плагин BannerProMiniShop3 (выключен по умолчанию)
REST API v1.1
- точка входа assets/components/bannerpro/api.php, Bearer-ключ bannerpro_api_key
- read: /ads, /positions, stats (overview, compare, clicks log), /audit, /templates, CSV export
- write (флаг bannerpro_api_write_enabled): POST/PATCH баннеров, create from template
- фильтры ads, проекция ?fields=, пагинация X-Total-Count / Link
- CORS, rate limit; спека OpenAPI: docs/openapi.yaml
Требования
- MODX 3.0+, PHP 8.2+
- pdoTools ≥ 2.1.0, VueTools для админки
- MiniShop3 — по желанию
Скриншоты





Changelog - BannerPro
Format: Keep a Changelog Versioning: Semantic Versioning
[1.0.0-beta1] - 2026-08-05
Первый beta-пакет BannerPro. MODX 3, PHP 8.2+, namespace bannerpro.
Added
Админка (Vue 3 + PrimeVue, VueTools)
- Вкладки: Баннеры, Позиции, Статистика, Журнал, Настройки.
- Баннеры: тип image/html, превью, шаблоны preset, bulk-действия, фильтры (active, type, product, category, tag, position).
- Позиции:
context_key, DnD порядок, вес связи, дублирование позиции и баннера. - Статистика: KPI, CTR, CVR, воронка показ → клик → заказ, сравнение периодов, экспорт CSV.
- Журнал audit (
bannerpro_audit). - Настройки в mgr: UTM, webhook click/impression,
ab_ttl. - OverviewWidget (7 дней), режим stats-only по ACL.
- Connector: 40 actions (
handlers.php).
Фронтенд
- Сниппет BannerPro (pdoFetch):
position,positionName,positionKey,context,productId. - Таргетинг:
&resource=`, `&parent=`, `&tags=`, `tagsMode; daypartingshow_hours. - Ротация:
RAND(),idx,weighted, A/B split (sortby=ab, cookiebannerpro_ab_{positionId}). - Лимиты
max_clicks/max_impressions, кэш HTML (bannerpro_cache). - Плейсхолдер
click_url, чанкиbyAd,byHtml. - Плагины: BannerProClickout, BannerProImpression, BannerProAnalytics (opt.), BannerProMiniShop3 (opt.).
Аналитика и интеграции
- Клики и показы (1/IP/сутки), pixel impression,
IntersectionObserver. - События MODX:
OnBannerProClick,OnBannerProImpression. - Webhook HTTP на клик и показ (HMAC), UTM на redirect.
- GA4, Matomo, Яндекс Метрика через
analytics.js. - MiniShop3:
product_id,category_id, плейсхолдерыproduct_*, атрибуция клик → заказ. - Read-only REST API:
GET /ads,/ads/{id},/positions,/stats,/stats/compare. - REST API v1.1: discovery, фильтры ads,
/positions/{id}, stats sub-routes, audit, templates, clicks log, CSV export, опциональный write (POST/PATCH), CORS, rate limit, OpenAPI spec.
Данные и сборка
- Таблицы:
bannerpro_ads,bannerpro_positions,bannerpro_ads_positions,bannerpro_clicks,bannerpro_impressions,bannerpro_ad_templates,bannerpro_audit. - Миграция с Bannery (
resolver_tables.php). - ACL:
bannerpro_save,bannerpro_remove,bannerpro_stats. - Сборка:
_build/build.php, Vite-бандлbannerpro-admin.min.js. - Документация:
docs/, лексикон ru/en/uk.
Fixed
- REST API: bootstrap без MODX connector auth (Bearer вместо mgr-сессии); роутинг
?route=/positionsи PATH_INFO; демо-ключ в seed. - Демо-чанк
tplFirst:click_urlс UTM и абсолютным путём вместо{bannerpro_click}/{adposition}. - Smoke-тесты: curl verify (click redirect без
-L, impression/bannerimpression/{id}, API auth).
Requirements
- MODX Revolution >= 3.0.0
- PHP >= 8.2.0
- pdoTools >= 2.1.0 (сниппет)
- VueTools (админка)
- MiniShop3 — опционально




Последние обсуждения в сообществе MODX.pro