Skip to content
CookieConsentManager
Управление согласиями, загрузкой аналитики, рекламных сервисов, видео и карт в MODX Revolution.
  • MODX 2
  • MODX 3
  • PHP 8.1
  1. Компоненты
  2. CookieConsentManager
  3. Адаптеры и сборка

Адаптеры и сборка ​

Встроенный адаптер — исходный JS, описывающий подключение конкретного провайдера с учётом разрешений. Если провайдер изменил официальный SDK или способ загрузки, разработчик может изменить соответствующий файл, не меняя весь компонент.

Где искать файлы ​

Точный путь к исходнику показан в карточке сервиса рядом с «Исходный код адаптера». Типовой каталог установленного сайта:

text
assets/js/cookie-consent/services/

Файлы этого каталога предназначены для изменений владельца сайта. Установочный пакет дополнительно хранит оригинальные версии адаптеров в приватном каталоге core/components/cookieconsentmanager/adapters/services/ на MODX 2 либо core/components/cookieconsentmanager3/adapters/services/ на MODX 3.

Как внести изменение ​

  1. Сохраните резервную копию исходника и проверьте новую официальную инструкцию провайдера.
  2. Измените требуемый файл services/*.js; сохраняйте совместимый JavaScript (ES2020).
  3. В Manager очистите кеш MODX или выберите Настройки → Дополнительные настройки → Сборка адаптеров → Пересобрать адаптеры.
  4. Проверьте статус и время последней успешной сборки, затем протестируйте Strict/Legacy и Network.

Сборка выполняется на сервере средствами PHP без Node/npm/Composer и объединяет только файлы, явно перечисленные в manifest. Дополнительные произвольные .js в каталоге не включаются автоматически. Пользовательский custom_js подключается отдельным файлом.

Безопасное обновление пакета ​

Система хранит SHA256 оригиналов адаптеров для версий пакета. При обновлении в пределах того же семейства пакета:

  • Исходник без локальных изменений может быть обновлён до нового оригинала.
  • Изменённый разработчиком исходник сохраняется даже при конфликте с новым оригиналом; автоматического merge нет.
  • Намеренно удалённый исходник не восстанавливается безусловно.
  • При ошибке нового JS остаётся предыдущая рабочая сборка и её версия; Manager показывает ошибку.

Готовый минифицированный JS публикуется атомарно. Он создаётся при установке/upgrade, очистке кеша в Manager либо ручной пересборке; посетительские запросы не запускают компиляцию. Новая установка без успешного bundle завершается ошибкой, поскольку предыдущего файла ещё нет.

При штатном удалении пакета исходные файлы с подтверждёнными штатными SHA256 удаляются, а изменённые или неизвестные адаптеры сохраняются с предупреждением. Не считайте это полной очисткой пользовательских данных.

Внимание

Не редактируйте одновременно с обновлением пакета один и тот же исходник через FTP/IDE. Перед upgrade сделайте резервную копию services/, конфигурации и последнего рабочего bundle.