Модульное ядро
Реестр подключает модули через общий интерфейс и сохраняет ядро независимым от их WordPress hooks.
Собственный инженерный WordPress-плагин
Модульный WordPress-плагин IT Dream с управлением согласием, подключением аналитики, локализацией и проверяемыми приватными обновлениями.
Есть похожая задача? Напишите в Telegram, что уже работает и что нужно изменить.
Задача
Объединить независимые функции WordPress вокруг небольшого ядра и обеспечить управляемую загрузку аналитики, совместимость и обновления без полей для произвольного кода.
ITD ModuBricks развивается как поддерживаемый внутренний продукт IT Dream, а не как массовый SaaS. Текущая стабильная версия — 1.1.1; заявленная граница совместимости — WordPress 5.2+ и PHP 7.4+.
Решение
Небольшое ядро координирует общие сервисы, а реестр подключает независимые модули через единый контракт.
Первый встроенный модуль Consent + Analytics управляет уведомлением о согласии и конфигурацией аналитических провайдеров.
Интеграции Яндекс Метрики и Google Analytics 4 получают только проверенные структурированные параметры.
Стабильный и beta-каналы обновлений встроены в стандартный интерфейс обновлений WordPress.
Диагностика хранит локальный allow-listed статус и не отправляет телеметрию.
Логика
Решение о согласии принимает локальный скрипт в браузере, поэтому одинаковый серверный HTML безопасен для полноформатного кэша.
До актуального согласия deferred-режим не создаёт ресурсы Яндекс Метрики или Google Analytics 4.
Манифест и пакет проходят строгую проверку; несовпадение checksum, подписи, версии или совместимости останавливает установку.
Production ZIP собирается только из явного списка runtime-файлов и не содержит тесты, CI, документацию, зависимости или ключи.
Возможности
Реестр подключает модули через общий интерфейс и сохраняет ядро независимым от их WordPress hooks.
Доступное уведомление, версия согласия, три опциональные юридические ссылки и два режима загрузки аналитики.
Независимые интеграции Яндекс Метрики и GA4 со строгой валидацией идентификаторов и параметров.
Stable и beta-каналы, WordPress-native update UI, строгий manifest и проверка пакета до распаковки.
POT, PO и MO-каталоги для ru_RU; публичная часть следует локали сайта, wp-admin — локали администратора.
Технологии
PHP-код интегрируется с WordPress API, локальный JavaScript управляет consent-состоянием и отложенной загрузкой провайдеров.
Поддержка заявлена для WordPress 5.2+ и PHP 7.4+; legacy-ветки WordPress получают отдельные безопасные fallback-механизмы обновления.
Пакет закрепляется SHA-256 и версионно-связанной Ed25519-подписью; проверка завершается fail-closed до распаковки ZIP.
Детерминированный builder использует runtime allowlist, а инспектор отклоняет traversal, дубликаты, symlinks, unsafe names и development-файлы.
Контроль качества
CI проверяет PHP 7.4 и 8.5, синтаксис, PHPUnit, PHPCompatibility, PHPCS, PHPStan и dependency audit.
Матрица WordPress включает реальные smoke-проверки 5.2.0, 5.2.24 и актуальной версии на заявленных PHP-runtime.
В текущем состоянии подтверждены 15 JavaScript-тестов для consent, двух провайдеров, подписей и состава release-пакета.
Две последовательные локальные сборки версии 1.1.1 дали идентичный ZIP и SHA-256; инспектор подтвердил 22 runtime-файла.
Release
Push и pull request запускают матрицу совместимости, анализ кода, тесты, audit и production-shaped ZIP.
Аннотированный prerelease-тег запускает отдельный защищённый workflow, подпись кандидата и публикацию beta manifest.
Точный stable-тег на main пересобирается в CI; пакет проверяется, подписывается, а stable manifest переключается последним.
WordPress получает предложение из выбранного канала, сверяет закреплённые метаданные и устанавливает только проверенный пакет.
Роль
Продукт спроектирован и разработан Егором / IT Dream — от модульной архитектуры и WordPress-реализации до тестов, release pipeline, обновлений и поддержки.
Итог
Подтверждённый инженерный итог — поддерживаемый плагин со stable-релизом 1.1.1, отдельным RC-каналом, русской локализацией, автоматическими проверками и централизованной доставкой подписанных обновлений. Пользовательские и коммерческие метрики не заявляются.
Разберу задачу, архитектуру, совместимость и процесс поддержки — без готового шаблона.