MODX и требования 168-ФЗ: полное руководство по русификации
MODX Revolution — гибкая CMS с открытым исходным кодом, которая даёт разработчикам полный контроль над разметкой и логикой сайта. Благодаря архитектуре на основе шаблонов, чанков и сниппетов MODX позволяет точечно настраивать каждый элемент интерфейса. Это преимущество помогает при приведении сайта в соответствие Федеральному закону 168-ФЗ, однако требует проверки множества компонентов.
Система лексиконов MODX
MODX использует систему лексиконов для локализации. Лексиконы представляют собой массивы строк, хранящиеся в PHP-файлах в директории core/lexicon/. Русский лексикон устанавливается вместе с языковым пакетом и покрывает административную панель и базовые элементы фронтенда.
// Пример файла лексикона core/lexicon/ru/default.inc.php
$_lang['search'] = 'Поиск';
$_lang['submit'] = 'Отправить';
$_lang['reset'] = 'Сбросить';
$_lang['cancel'] = 'Отмена';
$_lang['save'] = 'Сохранить';
$_lang['loading'] = 'Загрузка...';
$_lang['error_page_not_found'] = 'Страница не найдена';
// Использование лексикона в шаблоне
[[%search]] // Выведет "Поиск"
[[%submit]] // Выведет "Отправить"
Установка русского языка
Перейдите в административную панель MODX, откройте раздел System — Lexicon Management. Здесь можно просмотреть и отредактировать все лексиконные записи. Для установки русского языка перейдите в System — System Settings, найдите настройку cultureKey и установите значение ru. Также установите настройку manager_language в значение ru для русификации административной панели.
Проверка шаблонов и чанков
В MODX шаблоны и чанки формируют HTML-вывод сайта. Разработчики имеют полный контроль над разметкой, поэтому часть текстов может быть прописана напрямую в коде, минуя систему лексиконов.
Проверьте все шаблоны и чанки на наличие англоязычных строк. Перейдите в Elements — Templates и Elements — Chunks в административной панели и проверьте каждый элемент. Обратите внимание на:
- Тексты кнопок и ссылок в навигации
- Подписи в шапке и подвале сайта
- Плейсхолдеры и подсказки в формах
- Альтернативные тексты изображений
- Мета-теги и Open Graph данные
- Текст в CSS-псевдоэлементах
<!-- Пример чанка навигации -->
<!-- Было: -->
<nav class="main-nav">
<a href="/">Home</a>
<a href="/about">About</a>
<a href="/contact">Contact</a>
<button class="search-toggle">Search</button>
</nav>
<!-- Стало: -->
<nav class="main-nav">
<a href="/">Главная</a>
<a href="/o-kompanii">О компании</a>
<a href="/kontakty">Контакты</a>
<button class="search-toggle">Поиск</button>
</nav>
Дополнения MODX
MODX имеет экосистему дополнений (extras), которые расширяют функциональность системы. Наиболее популярные дополнения и их проверка:
FormIt — обработка форм
FormIt — стандартное дополнение для обработки форм. Все сообщения валидации и подтверждения настраиваются через параметры сниппета. Убедитесь, что тексты ошибок и подтверждений на русском языке.
[[!FormIt?
&hooks=`email,redirect`
&emailTo=`info@example.ru`
&emailSubject=`Новая заявка с сайта`
&validate=`name:required,email:email:required,message:required`
&validationErrorMessage=`Пожалуйста, исправьте ошибки в форме.`
&successMessage=`Спасибо! Ваше сообщение отправлено.`
&errRequired=`Это поле обязательно для заполнения.`
&errEmail=`Введите корректный адрес электронной почты.`
]]
miniShop2 — интернет-магазин
miniShop2 — популярное дополнение для создания интернет-магазинов на MODX. Оно разработано русскоязычным сообществом и имеет полную русскую локализацию. Тем не менее проверьте все чанки корзины, оформления заказа и каталога на наличие остаточных англоязычных строк.
pdoTools — вывод контента
pdoTools используется для вывода списков ресурсов, навигации, хлебных крошек. Проверьте шаблоны (tpl) всех вызовов pdoResources, pdoMenu, pdoCrumbs на наличие английских текстов.
Сниппеты и плагины
Пользовательские сниппеты на PHP могут генерировать HTML-код с текстовыми строками. Проверьте все сниппеты в Elements — Snippets и убедитесь, что выводимый текст на русском языке. Рекомендуется использовать систему лексиконов даже для пользовательских сниппетов.
Системные настройки
Проверьте системные настройки MODX, влияющие на отображение контента:
- cultureKey — должен быть установлен в ru
- locale — установите ru_RU.UTF-8
- site_name — название сайта на русском
- error_page — должна указывать на русскоязычную страницу 404
- unauthorized_page — страница ошибки доступа на русском
Контент и ресурсы
Все ресурсы (страницы) MODX должны содержать контент на русском языке. Проверьте поля pagetitle, longtitle, description и introtext каждого ресурса. Для массовой проверки можно использовать SQL-запросы к базе данных или экспорт данных через административную панель.
Чек-лист для MODX
- cultureKey установлен в ru
- Русский лексикон установлен и актуален
- Все шаблоны проверены на английские строки
- Все чанки переведены на русский
- Сниппеты выводят русскоязычный текст
- Дополнения русифицированы
- Формы с русскими сообщениями валидации
- Метаданные ресурсов на русском
- Страницы ошибок оформлены на русском
- Проведена автоматическая проверка
Для систематической проверки используйте чек-лист веб-разработчика и словарь замен. Ознакомьтесь также с руководствами по Joomla и WordPress.
Заключение
MODX благодаря своей гибкой архитектуре позволяет точечно контролировать каждый текстовый элемент на сайте. Система лексиконов обеспечивает централизованное управление переводами. Основная задача — провести тщательный аудит всех шаблонов, чанков, сниппетов и дополнений, заменив все англоязычные строки русскими. Регулярно запускайте сканер КириллоСкан для поддержания соответствия 168-ФЗ.