MODX — гибкая опенсорс-CMS с устойчивой нишей в русскоязычном сегменте: на ней работают корпоративные сайты, блоги, сложные проекты с нестандартной структурой, где важна свобода вёрстки и контроль над разметкой. При продвижении сайтов на MODX SEO-специалист получает мощный набор инструментов, но за гибкость платит ручной настройкой: friendly URLs нужно включать вручную, sitemap — генерировать через экстрас, мета-теги — реализовывать через Template Variables. Этот гайд собирает порядок настройки, особенности продвижения MODX-сайта под Яндекс и Google и пошаговый чек-лист SEO для проектов в Беларуси и СНГ.
Что такое MODX и кому подходит
MODX — система управления контентом с двумя основными ветками:
- MODX Revolution. Современная основная ветка. Текущая стабильная версия — 3.2, требует PHP 8.1 и выше. Используется в большинстве новых проектов и в активной разработке.
- EvolutionCMS. Самостоятельный форк от старой ветки MODX Evolution. Отдельный проект со своим сообществом и роадмапом, развивается независимо от Revolution. Подходит для лёгких сайтов с минимальной нагрузкой.
В отличие от WordPress, MODX не навязывает структуру: нет дефолтных типов записей, рубрик, кастомных полей в привычном смысле. Контент — ресурсы в древовидной структуре, оформление — шаблоны с Smarty-подобным синтаксисом MODX-тегов, логика — сниппеты на PHP. Гибкость даёт полную свободу при создании нестандартных проектов, но требует более высокого порога входа.
Когда MODX — оправданный выбор
- Корпоративный сайт со сложной кастомной логикой и нестандартной структурой каталога.
- Лендинг или одностраничник с уникальной анимацией и контролем над каждой строкой кода.
- Многосекционный портал с разной логикой в разных разделах.
- Проект, где разработчику нужна свобода в HTML и JS без накладок темы.
- Сайт с прицелом на длительную поддержку одной командой без миграций на тяжёлые платформы.
Когда MODX — спорный выбор
- Стандартный интернет-магазин — проще WooCommerce, Bitrix, OpenCart.
- Контент-проект с акцентом на блог и UGC — проще WordPress.
- Нет разработчика с опытом MODX — поиск специалиста в СНГ заметно сложнее, чем для WordPress или Bitrix.
- Заказчик ожидает «всё из коробки» — MODX требует ручной настройки большинства SEO-функций.
SEO-возможности платформы
MODX из коробки не богат SEO-функциями, как WordPress или PrestaShop. Большая часть SEO-настроек реализуется через системные параметры, Template Variables и плагины-экстрас. Преимущество — полный контроль над выходным HTML без накладных JS-скриптов и инлайн-стилей, что положительно влияет на скорость и индексацию.
- Friendly URLs. Включаются через системные настройки и
.htaccess(Apache) или конфиг Nginx. После активации все URL ресурсов превращаются в читаемые адреса вида/blog/seo-dlya-modx/. - Кастомные мета-теги через Template Variables. Title, Description, OG-теги задаются как TV на уровне ресурса и выводятся в шаблон через теги
[[*tv_meta_title]]. - Свободные шаблоны. Полный контроль над разметкой
<head>, порядком блоков, всеми атрибутами тегов. Нет лишних мета-генераторов и noise-разметки. - Canonical через шаблон. Реализуется одной строкой в шаблоне:
<link rel="canonical" href="[[~[[*id]]]]" />. - Управление видимостью ресурса. Параметры
published,searchable,deletedконтролируют публикацию и индексацию каждой страницы. - Контентные блоки через Chunks. Переиспользуемые элементы (футер, шапка, блоки CTA) выносятся в чанки и подключаются в шаблоны через
[[$chunk_name]].
MODX SEO держится на дисциплине разработчика: то, что в WordPress решается установкой Yoast за пять минут, в MODX требует ручной настройки Template Variables, шаблонов и подбора подходящих экстрас. На стороне SEO — полный контроль над разметкой и отсутствие шумных автогенераций.
Базовые технические настройки
При продвижении сайтов на MODX первая группа настроек выполняется через панель администратора в разделе Система → Системные настройки. Параметры, которые проверяются на старте.
Friendly URLs
В системных настройках активируются:
friendly_urls= Yesfriendly_alias_urls= Yesuse_alias_path= Yes (для отображения полного пути категорий в URL)friendly_urls_strict= Yes (запрещает доступ к ресурсу по старому URL вида?id=15)container_suffix— пусто или/для контейнерных ресурсов
После активации в корень сайта копируется .htaccess из ht.access, который идёт в дистрибутиве, и переименовывается в рабочий файл. Для Nginx используется отдельный конфиг с rewrite-правилами.
Robots.txt
MODX не генерирует robots.txt автоматически — файл создаётся вручную в корне сайта. Минимальный рабочий шаблон:
User-agent: *
Disallow: /manager/
Disallow: /connectors/
Disallow: /core/
Disallow: /assets/cache/
Disallow: /*?search=
Disallow: /*?action=
Disallow: /*?sort=
Sitemap: https://example.by/sitemap.xmlАльтернатива — генерация robots.txt через ресурс с типом text/plain. Это даёт возможность редактировать файл прямо в админке MODX без доступа к серверу.
Sitemap.xml
Из коробки MODX не умеет генерировать XML-карту сайта. Стандартное решение — экстрас pdoSitemap из пакета pdoTools или отдельный googleSitemap. После установки создаётся ресурс с шаблоном, который вызывает сниппет:
[[!pdoSitemap?
&allowedTemplates=`1,2,3,4`
&showHidden=`0`
&cacheTime=`3600`
]]Ресурс публикуется как sitemap.xml с типом text/xml. После этого URL https://example.by/sitemap.xml отдаёт корректную XML-карту с автоматическим обновлением через cron или при изменении ресурсов.
Canonical и hreflang
Canonical-теги добавляются в шаблон в секцию <head>:
<link rel="canonical" href="[[~[[*id]]]]" />Этого достаточно для базовой защиты от дублей через GET-параметры. Для более сложных сценариев (если ресурс публикуется в нескольких контекстах) canonical задаётся через Template Variable и переопределяется на конкретных страницах.
Hreflang при мультиязычности реализуется через сниппет — обычно используется LangRouter в связке с BabelTranslate. Подробнее в разделе про мультиязычность.
Extras для SEO в MODX
Базовая SEO-настройка MODX расширяется через экстрас (пакеты, аналог плагинов в WordPress). Список действующих SEO-инструментов для MODX Revolution.
| Экстрас | Назначение |
|---|---|
| seoPro | Управление мета-тегами на уровне ресурса, дубль-контроль, redirect 301, ЧПУ-транслитерация заголовков |
| seoTab | Дополнительная вкладка SEO в редактировании ресурса: Title, Description, Keywords, OG-теги, JSON-LD |
| pdoSitemap (из pdoTools) | Быстрая генерация XML-карты сайта с фильтрами по шаблонам, родителям, контекстам |
| Yandex.Webmaster | Интеграция с Яндекс Вебмастером: автоматическая отправка sitemap, IndexNow, мониторинг ошибок индексации |
| Redirector | Управление 301-редиректами через интерфейс админки, поддержка регулярных выражений |
| SchemaProMODX | Микроразметка JSON-LD: Article, Product, Organization, Breadcrumb, FAQPage |
| EuroLanguage / BabelTranslate | Мультиязычность с автоматическим hreflang |
| pdoTools | Производительные сниппеты для вывода ресурсов, меню, breadcrumb — без них стандартные сниппеты MODX заметно медленнее |
seoPro и seoTab — связка
Эти два экстрас закрывают 80% SEO-задач MODX-проекта:
- seoPro добавляет уровень контроля за дублями: автоматический canonical, контроль за дубликатами Title, защита от индексации страниц с параметрами.
- seoTab добавляет в редактор ресурса отдельную вкладку «SEO», где задаются все мета-теги, OG-разметка, расширенные настройки видимости. Совместим с MIGX для редактирования произвольных JSON-LD блоков.
Скорость и Core Web Vitals
MODX — одна из самых лёгких CMS по умолчанию: без шумных скриптов, без принудительного jQuery, без обязательных стилей темы. Core Web Vitals (метрики LCP — отрисовка крупнейшего контента, INP — отклик на пользовательское взаимодействие, CLS — кумулятивный сдвиг макета) проходятся на стандартной конфигурации без специальных усилий, если разработчик следит за вёрсткой и подключаемыми библиотеками.
Базовые ускорители
- MODX Cache. Кеширование ресурсов и сниппетов включено по умолчанию. Контролируется через настройки
cache_resource,cache_default. После публикации новых ресурсов кеш очищается автоматически. - pdoTools вместо стандартных сниппетов.
pdoResources,pdoMenu,pdoCrumbsработают в 5–10 раз быстрее аналогичныхgetResources,Wayfinder,Breadcrumbsза счёт прямого SQL без xPDO-обёртки. - Минификация и объединение статики. Через экстрас
ClientResourcesProcessorили собственную сборку через Gulp/Webpack. - OPcache на уровне PHP. Базовая серверная оптимизация, ускоряет работу всех PHP-приложений включая MODX.
- HTTP/2 и Brotli на веб-сервере.
- CDN для статики. Cloudflare, BunnyCDN или Selectel CDN — снижают TTFB (Time to First Byte, время до первого байта) и нагрузку на источник.
Картинки
- phpThumbOf и phpThumbsUp. Стандартные инструменты для обработки изображений в MODX. Делают ресайз, кроп, WebP-конвертацию на лету.
- WebP-конвертация. Через phpThumbOf с параметром
&wctx=`web.webp`или через серверную конвертацию (ImageMagick, libvips). - Lazy-loading. Атрибут
loading="lazy"добавляется вручную в шаблон, иногда автоматически через экстрас. - Атрибут srcset. Реализуется через шаблонный сниппет, который генерирует набор изображений разных размеров.
Структурированные данные
MODX не генерирует Schema.org-разметку автоматически. Реализация — либо через экстрас (SchemaProMODX, AjaxSchema), либо ручная вставка JSON-LD в шаблон.
Минимальный набор разметки для типового сайта:
- Organization. На главной — название, логотип, sameAs со ссылками на соцсети, contactPoint.
- WebSite + SearchAction. Включает Sitelinks Searchbox в выдаче Google.
- BreadcrumbList. На всех страницах кроме главной — цепочка категорий.
- Article. На блог-постах и новостях — headline, datePublished, dateModified, author, image.
- FAQPage. На страницах с вопросами и ответами.
- Product + Offer. На карточках товаров (если на MODX построен ИМ — обычно через MiniShop2).
Разметка вставляется в шаблон через теги MODX с подстановкой данных ресурса:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "[[*pagetitle]]",
"datePublished": "[[*publishedon:date=`%Y-%m-%dT%H:%M:%S`]]",
"image": "[[*tv_main_image]]"
}
</script>Корректность разметки проверяется в Google Rich Results Test и валидаторе микроразметки Яндекс Вебмастера.
Мультиязычность
В MODX реализация мультиязычности — задача не из коробки. Используются два основных подхода:
Подход 1: контексты. MODX поддерживает несколько контекстов (Contexts) в одной инсталляции. Для каждого языка создаётся свой контекст со своими ресурсами, шаблонами, настройками. Преимущество — полная изоляция языковых версий, разные URL-структуры, отдельные настройки SEO. Недостаток — дублирование ресурсов между контекстами, отсутствие связи переводов друг с другом.
Подход 2: BabelTranslate + LangRouter
Связка двух экстрас. BabelTranslate создаёт зеркальные структуры ресурсов в разных контекстах и держит связь между переводами одной страницы. LangRouter отвечает за маршрутизацию: определяет язык пользователя по Accept-Language, делает редирект на нужный контекст.
Для каждой страницы автоматически генерируется набор hreflang-тегов с указанием на все языковые версии:
<link rel="alternate" hreflang="ru-by" href="https://example.by/ru/..." />
<link rel="alternate" hreflang="en" href="https://example.by/en/..." />
<link rel="alternate" hreflang="x-default" href="https://example.by/ru/..." />Этот подход чаще используется в коммерческих проектах, где переводы регулярно правятся и важна синхронизация между языками.
Оптимизация под российский поиск
MODX исторически популярен в русскоязычном сегменте — большая часть документации, обучающих материалов и экстрас выпущена на русском. Это даёт преимущество при работе с Яндексом: команда привычна к терминологии, к местным особенностям, к специфике алгоритмов. SEO-продвижение в Беларуси и СНГ на MODX опирается на стандартный пул экстрас и корректную работу с Вебмастером.
Подтверждение в Яндекс Вебмастере
- Добавить сайт в Вебмастер и подтвердить права через мета-тег в
<head>(тег задаётся в системных настройках MODX и выводится в шаблон). - Указать регион. Для проектов в РБ — конкретный город по убыванию населения (Минск, Гомель, Могилёв, Витебск, Гродно, Брест), если магазин/сервис работает с локальной аудиторией.
- Отправить sitemap.xml через раздел «Файлы Sitemap».
- Подключить главное зеркало (https/http, www/без-www).
ИКС и поведенческие сигналы. ИКС (Индекс Качества Сайта) — единственная метрика непосредственно от Яндекса, влияющая на доверие к проекту. Складывается из трёх компонентов: размер аудитории, удовлетворённость пользователей, цитируемость в интернете. На MODX-проектах для роста ИКС работает та же тактика, что и на любой CMS: уникальный контент, корректная техническая часть, упоминания бренда во внешних источниках, регулярная обновляемость материалов.
IndexNow. Протокол быстрой индексации для Яндекс и Bing. После обновления ресурса MODX через экстрас (например, Yandex.Webmaster или indexnow) отправляет уведомление в API, и поисковик пересканирует страницу за часы вместо стандартных дней. Эффективно для новостных сайтов, блогов с регулярными публикациями, ИМ с быстрой ротацией товаров.
Турбо-страницы. Формат Турбо-страниц Яндекса доступен через RSS-фид. На MODX это реализуется отдельным ресурсом со специальным шаблоном, который собирает контент в нужной структуре. Роль продукта в Яндексе постепенно снижается — для большинства новых проектов оптимизация под мобильную скорость и Core Web Vitals даёт сопоставимый или лучший результат.
Яндекс Метрика. Подключение Яндекс Метрики на MODX — стандартное действие через вставку счётчика в общий шаблон или через footer-чанк. Ecommerce-данные передаются через dataLayer и обработчик в шаблоне товарной страницы. Активный счётчик с целями и ecommerce-событиями — обязательный элемент для адекватного анализа поведения и работы с ИКС.
Типичные ошибки при SEO MODX-сайтов
Список повторяющихся проблем, которые встречаются в большинстве MODX-проектов на этапе аудита.
- Friendly URLs не включены. Сайт работает на адресах вида
?id=15. Решение — включить параметры в системных настройках, перезалить.htaccess, проверить mod_rewrite. - Sitemap не сгенерирован. Файл
sitemap.xmlотсутствует или не обновляется. Решение — установитьpdoSitemapчерез pdoTools, создать ресурс с шаблоном, прописать адрес в robots.txt и Вебмастере. - Дубли через GET-параметры. Без canonical в шаблоне страницы с фильтрами и параметрами сортировки плодят дубли.
- Не очищается кеш после обновления. Кеш MODX не всегда обновляется при изменении контента, особенно при использовании пользовательских сниппетов. Решение — настроить автоматическую очистку через события
OnDocFormSave. - Стандартные сниппеты вместо pdoTools. Использование
getResources,Wayfinder,BreadcrumbsвместоpdoResources,pdoMenu,pdoCrumbsзамедляет генерацию страниц в разы. - Robots.txt не настроен. Закрытие
/manager/,/connectors/,/core/отсутствует, технические разделы попадают в индекс. - Нет canonical в шаблоне. Базовая защита от дублей не настроена.
- Дубли Title через TV. При копировании ресурсов забывают переписать
tv_meta_titleиtv_meta_description, на сайте появляются одинаковые мета-теги. - Тяжёлые phpThumbOf-обработки без кеша. Динамическая обработка изображений на каждом запросе грузит сервер. Решение — настроить кеширование результатов phpThumbOf и проверить параметры
phpthumbof.cache_dir. - Шаблон без расшифровок Schema.org. Микроразметка отсутствует — теряются расширенные сниппеты в выдаче.
- Soft 404. Стандартная страница 404 выдаёт код 200 с шаблоном «не найдено». Решение — настроить
error_pageв системных настройках на корректный ресурс с заголовком 404. - Кривая мультиязычность. Один контекст для нескольких языков без hreflang приводит к дублям и неправильной кластеризации в выдаче. Решение — использовать связку BabelTranslate + LangRouter.
- OPcache не включён. На production-сервере без OPcache MODX работает заметно медленнее.
- Mode разработчика на production. Параметр
send_errors= Yes показывает ошибки PHP пользователям. Решение — отключить на боевой версии.
Оптимизация MODX-сайта под Яндекс и Google — задача в первую очередь дисциплинарная: при правильной настройке экстрас и шаблонов платформа выдаёт чистую разметку, быструю отдачу и контролируемую структуру. Параллельно на старте при раскрутке сайтов проекты обычно используют контекстную рекламу, особенно в первые 4–6 месяцев, пока органика накапливает поведенческие сигналы и ссылочный профиль.
Часто задаваемые вопросы
MODX Revolution или EvolutionCMS — что выбирать для нового проекта?
Для новых коммерческих проектов — MODX Revolution 3.2. У неё актуальная архитектура на xPDO, активная разработка, совместимость с PHP 8.1+, основной пул современных экстрас. EvolutionCMS — отдельная ветка-форк с собственным сообществом, она остаётся актуальной для лёгких сайтов с минимальной нагрузкой и для проектов, исторически работающих на этом форке. Если есть выбор без legacy-ограничений — Revolution.
Нужны ли коммерческие экстрас для базового SEO или хватит бесплатных?
Для большинства типовых задач хватает бесплатных: pdoTools (включает pdoSitemap), seoPro, seoTab, SchemaProMODX, Redirector. Платные решения нужны при специфических задачах — массовая работа с редиректами, кастомные схемы микроразметки, расширенная аналитика дублей. На старте — бесплатный стек, расширение по мере роста проекта.
Как работать с дублями через GET-параметры в MODX?
Три уровня защиты. Первый — canonical в шаблоне с указанием на ресурс без параметров. Второй — закрытие конкретных параметров в robots.txt: Disallow: /*?sort=, Disallow: /*?filter=. Третий — настройка friendly_urls_strict = Yes, что блокирует доступ к ресурсу через старые URL вида ?id=15. В комбинации эти меры закрывают типовые сценарии дублирования.
Можно ли вести SEO-продвижение в Беларуси на MODX-сайте только органикой?
Технически — да, MODX даёт всё для роста органического трафика: чистая разметка, контроль над скоростью, гибкость структуры. Но на старте проекта органика растёт постепенно — первые 4–6 месяцев результаты минимальные. Параллельно для быстрых продаж магазин обычно использует контекстную рекламу и работу с прайс-агрегаторами Onliner и katalog.by. Когда органика выходит на устойчивую базу, доля платного трафика снижается.
Как настроить редиректы при миграции на MODX с другой CMS?
Через экстрас Redirector или серверные правила в .htaccess. Redirector предпочтительнее для большой карты редиректов: интерфейс в админке, импорт CSV, поддержка регулярных выражений, ведение журнала срабатываний. Для нескольких десятков редиректов проще обойтись правилами на уровне веб-сервера. После миграции обязательна проверка через краулер (Screaming Frog, Netpeak Spider) и мониторинг ошибок в Search Console и Вебмастере в первые 4–8 недель.
Подходит ли MODX под интернет-магазин?
На MODX строятся интернет-магазины (ИМ) через экстрас MiniShop2 — это полноценный ecommerce-движок с каталогом, корзиной, заказами, интеграциями с платёжными системами. MiniShop2 подходит для проектов до 5–10 тысяч SKU с типовым ассортиментом. Для крупных каталогов и сложной B2B-логики лучше использовать специализированные платформы — Magento, PrestaShop, OpenCart, Bitrix.
Как вписать MODX в чек-лист SEO под Яндекс?
Под Яндекс — стандартный набор плюс несколько MODX-специфичных пунктов: подключение Yandex.Webmaster через экстрас, активация IndexNow для быстрой переиндексации, корректная региональная привязка в Вебмастере, JSON-LD с поддержкой Article и Organization (Яндекс активно использует эти схемы для расширенных сниппетов), Турбо-страницы при наличии поддержки в шаблоне. Все эти пункты добавляются через бесплатные экстрас, без необходимости в кастомной разработке.
Какой минимальный набор экстрас нужен для нового MODX-сайта?
При раскрутке сайтов на MODX базовый рабочий набор: pdoTools (быстрые сниппеты + pdoSitemap), seoPro и seoTab (управление мета и SEO-вкладка), Redirector (редиректы), SchemaProMODX или AjaxSchema (микроразметка), Yandex.Webmaster (интеграция с Вебмастером, IndexNow), phpThumbOf (обработка изображений). Этот стек закрывает 90% задач SEO-продвижения MODX-сайта, остальное добавляется по специфике проекта.



