# Готовность сайта ← [К модульной системе](README.md) Модуль **Готовность сайта** собирает единый отчёт перед публикацией проекта. Он не меняет документы, шаблоны и файлы: автоматические проверки только читают конфигурацию и указывают экран, где исправить проблему. ## Установка Откройте **Модули → Управление**, найдите «Готовность сайта» и нажмите **Установить**. После установки появятся: - пункт **Модули → Готовность сайта**; - виджет `6/12` на дашборде рядом с безопасностью файлов; - права просмотра, запуска и управления; - уведомление, если последний отчёт содержит критические ошибки. При деинсталляции история, подтверждения и настройки модуля удаляются. Простое выключение сохраняет данные. ## Профили На вкладке **Профиль** выберите назначение проекта: | Профиль | Когда использовать | | --- | --- | | Контентный сайт | Страницы, статьи, новости, формы и личный кабинет. | | Каталог | Контентный сайт со структурированным каталогом. | | Магазин | Каталог, корзина, заказы и способы оплаты. | | Собственный | Только явно включённые группы проверок. | Отсутствие корзины не считается ошибкой контентного сайта. Для собственного профиля можно отдельно включить систему, безопасность, контент, навигацию, медиа, модули, каталог, продажи и ручной чек-лист. ## Отчёт Кнопка **Запустить проверку** создаёт новый неизменяемый отчёт. Состояния: - **Ошибка** — критическое препятствие, сайт не считается готовым; - **Внимание** — настройка или ручное действие требуют проверки; - **Совет** — необязательное улучшение; - **Пройдено** — автоматическая проверка успешна; - **Подтверждено** — пункт ручного чек-листа принят администратором. Оценка помогает сравнивать запуски, но не отменяет критические ошибки. Отчёт можно фильтровать, открыть из истории и скачать в JSON. ## Ручной чек-лист Ручные пункты подтверждают визуальную проверку, работу форм, резервную копию, аналитику и тестовый заказ. Кнопка с галочкой сохраняет пользователя и время. Повторное нажатие снимает подтверждение и создаёт обновлённый отчёт. ## Проверки другого модуля Пакет может добавить свои проверки через хук `site_readiness.checks`: ```php Hooks::add('site_readiness.checks', function ($payload) { $payload['checks'][] = array( 'code' => 'reviews.configuration', 'group' => 'modules', 'title' => 'Модуль отзывов настроен', 'description' => 'Проверяет обязательные параметры публикации.', 'profiles' => array('content', 'catalog', 'commerce', 'custom'), 'manual' => false, 'fix_url' => '/modules/reviews', 'handler' => function () { $ready = ReviewsSettings::isReady(); return array( 'status' => $ready ? 'passed' : 'warning', 'message' => $ready ? 'Настройки заполнены' : 'Заполните получателя', 'details' => array(), ); }, ); return $payload; }); ``` Код проверки должен быть стабильным и уникальным. Допустимые состояния автоматического обработчика: `passed`, `error`, `warning`, `recommendation`. Исключение обработчика записывается как ошибка конкретной проверки и не ломает остальной отчёт.