ГлавнаяБлог
SEO на MODX: возможности и настройка

SEO на MODX: возможности и настройка

SEO на MODX: возможности и настройка — иллюстрация к статье блога SEO Мастера
Автор: SEO Мастера · агентство продвижения с 2005 года Дата: 14 июля 2026 Время чтения: 15 мин

MODX Revolution — редкая CMS, где SEO-специалист не борется с системой, а получает от неё ровно то, что попросит. Здесь нет навязанной разметки, нет «магии ядра», которая подставит в код неожиданный div, нет плагина, дописывающего в title лишний хвост. Шаблон — чистый HTML, который вы пишете сами, до последнего символа. Обратная сторона той же медали: MODX из коробки не делает ничего. Ни ЧПУ, ни sitemap, ни canonical, ни robots.txt — всё это придётся включить и настроить руками. В этой статье разбираем, как выжать из MODX максимум и не наступить на грабли, о которые спотыкается большинство проектов, а если задача горит — SEO-продвижение мы возьмём на себя целиком.

Коротко

  • MODX не навязывает вёрстку: шаблон — это ваш HTML без единого лишнего тега. Для технического SEO это лучший старт среди распространённых CMS.
  • ЧПУ включаются тремя системными настройками плюс правилами в .htaccess — иначе сайт живёт на адресах вида index.php?id=42.
  • Метатеги делаются на TV-полях с фолбэком через фильтры вывода, а не отдельным SEO-модулем: pdoTools закрывает большинство задач без сторонних дополнений.
  • Кэш MODX двухуровневый: кэш ресурса и кэш сниппетов. Некэшируемые вызовы через — главная причина медленных MODX-сайтов.
  • Sitemap собирается pdoSitemap с фильтрацией по searchable и published — статический файл в MODX не нужен.
  • Мультирегиональность решается либо контекстами с поддоменами, либо папками; контексты дают полную изоляцию настроек, включая base_url и hreflang.
  • Главная плата за гибкость — квалификация. На MODX нельзя «поставить плагин и забыть»: любая ошибка в шаблоне сразу становится SEO-проблемой.

Почему MODX объективно удобен для SEO

Разговор о SEO на любой CMS сводится к одному вопросу: сколько усилий нужно, чтобы получить на выходе тот HTML, который вы задумали. На большинстве систем ответ неприятный. Движок отдаёт свою разметку, тема добавляет свою, плагины — свою, и SEO-специалист неделями воюет с чужим кодом, вычищая мусорные обёртки, лишние h1 и хлебные крошки, которые размечены не тем типом.

MODX устроен принципиально иначе. Шаблон в MODX — это просто HTML-документ, в который вы расставляете плейсхолдеры вида SEO на MODX: возможности и настройка или вызовы сниппетов . Всё, что не является плейсхолдером, отдаётся браузеру и роботу байт в байт. Нет темы, которая решает за вас. Нет ядра, которое подмешивает свои скрипты. Если в исходном коде страницы появился лишний тег — его туда положили вы, и вы знаете, где именно.

Практический смысл этого простой. Когда нужно вынести критический CSS в head, вы просто выносите его в head. Когда нужно, чтобы h1 был ровно один и стоял до навигации, вы так и верстаете. Когда нужна микроразметка Schema.org на карточке товара, вы пишете JSON-LD прямо в шаблоне и подставляете в него нужные поля — без плагина-прослойки, который умеет только пять предустановленных типов. Задачи внутренней оптимизации сайта, которые на других системах требуют переопределения шаблонов ядра, здесь решаются правкой одного файла в админке.

Вторая сильная сторона — модель данных. Любому ресурсу можно добавить произвольное количество TV-полей (Template Variables) любого типа: текст, textarea, чекбокс, список, изображение, набор изображений. Это значит, что структура данных проектируется под семантику, а не под ограничения CMS. Нужны отдельные поля под title, description, canonical, приоритет в sitemap, флаг noindex, региональная привязка — заводите шесть TV и получаете полный контроль.

Главное про MODX

MODX даёт свободу, но не даёт готовых решений. Ни одна SEO-настройка не включена по умолчанию — ни ЧПУ, ни sitemap, ни canonical, ни sitemap.xml. Проект на MODX либо настроен грамотно и работает лучше конкурентов, либо не настроен вообще и сливает трафик на ровном месте. Середины здесь почти не бывает.

ЧПУ: включение и типичные ошибки

Из коробки MODX отдаёт адреса вида site.ru/index.php?id=42. Такой URL индексируется, но не несёт ключей, не читается человеком и провоцирует дубли: одна и та же страница доступна и по id, и по алиасу. Как устроены нормальные адреса и почему они важны, подробно разобрано в материале про ЧПУ и человекопонятные URL; здесь — конкретика по MODX.

Три системные настройки, которые всё решают

ЧПУ в MODX включаются в разделе «Система → Настройки системы». Ключевых параметра три, и работают они только вместе.

ПараметрЗначениеЧто делает
friendly_urls Да Включает генерацию человекопонятных адресов вместо index.php?id=
friendly_alias_urls Да Заставляет использовать алиас ресурса, а не его числовой id
use_alias_path Да Включает вложенность: адрес отражает структуру каталога (/uslugi/seo/)
automatic_alias Да Автоматически генерирует алиас из заголовка при создании ресурса
container_suffix / Суффикс для контейнеров: слеш на конце вместо .html
friendly_urls_strict Да Отдаёт 404 на неверный регистр и мусорные хвосты вместо дубля с кодом 200
xhtml_urls Нет Отключает экранирование амперсандов в ссылках, ломающее часть URL

Отдельная ловушка — use_alias_path. Если он выключен, все ресурсы живут в корне: /kupit-divan/ вместо /katalog/divany/kupit-divan/. Для маленького сайта это терпимо, для каталога — катастрофа, потому что URL перестаёт отражать структуру сайта, а поисковик теряет сигнал о вложенности разделов. Включать эту настройку на живом проекте с трафиком нельзя без подготовки: все адреса поменяются разом, и без карты 301-редиректов вы обнулите позиции. Порядок действий — сначала выгрузка текущих URL, потом карта соответствий, потом переключение и одновременная заливка 301-редиректов.

Транслитерация: обязательный дополнительный компонент

Русские заголовки MODX по умолчанию превращает в алиасы с кириллицей или обрезает их. Нужен компонент транслитерации — в экосистеме это translit (плагин, ставится из репозитория) либо встроенные средства современных сборок. После установки в настройке friendly_alias_translit выбирается схема транслитерации (для русского — russian). Проверка простая: создайте ресурс «Купить диван в Москве» и убедитесь, что алиас стал kupit-divan-v-moskve, а не набором процентов от URL-кодирования кириллицы.

Правила в .htaccess

Одних настроек мало: веб-сервер должен понимать, что запрос к /uslugi/seo/ нужно передать в index.php. В корне MODX лежит файл ht.access — его переименовывают в .htaccess. Внутри раскомментируйте RewriteBase (если сайт в подпапке), задайте канонический хост — с www или без — и принудительный HTTPS. Именно здесь склеивается зеркало: правило должно быть одно, отдавать 301 и вести на выбранную версию хоста и протокола. Как не потерять позиции при переходе на защищённый протокол — в разборе HTTPS и SEO.

Метатеги: TV-поля вместо SEO-модуля

Здесь MODX расходится с логикой WordPress и Битрикса. Не нужно искать «тот самый SEO-плагин» — правильнее спроектировать поля самому. Стандартная схема, которую мы разворачиваем на проектах.

Набор TV-полей

  • seo_title (text) — title страницы. Отдельно от pagetitle, потому что H1 и title решают разные задачи и почти никогда не должны совпадать дословно.
  • seo_description (textarea) — description для сниппета.
  • canonical_url (text) — принудительный canonical для страниц фильтров и пагинации.
  • noindex (checkbox) — флаг закрытия страницы от индексации.
  • h1 (text) — заголовок первого уровня, если он отличается от pagetitle в меню.

Ключевая механика — фолбэк через фильтры вывода. Заполнять seo_title на тысяче карточек вручную никто не будет, поэтому в шаблоне пишется конструкция с подстановкой значения по умолчанию: если TV пустое, берётся pagetitle плюс шаблонный хвост с названием компании и городом. В синтаксисе MODX это модификатор :default= или :is=. Так вы получаете гарантированно непустой уникальный title на каждой странице, а руками правите только приоритетные посадочные. Как формулировать сами теги, чтобы они собирали клики, — в статье про title и description.

Типичная ошибка

Хвост в title вида «— купить в Москве недорого, цены от производителя» на всех тысячах карточек. Формально уникальность есть, фактически — переспам и обрезанный сниппет. Шаблон фолбэка должен быть коротким: заголовок плюс бренд. Всё остальное — руками на важных страницах.

Что даёт pdoTools

pdoTools — не «плагин для SEO», а набор сниппетов, заменяющих штатные getResources, Wayfinder и Breadcrumbs, работающих в разы быстрее за счёт прямых запросов через xPDO вместо перебора объектов. Для SEO важны конкретные компоненты пакета:

Меню

pdoMenu

Строит навигацию честными тегами a href с реальными ЧПУ. Поддерживает ограничение глубины и исключение ресурсов — так закрывают служебные разделы от лишних ссылок.

Крошки

pdoCrumbs

Хлебные крошки по дереву ресурсов. Микроразметку BreadcrumbList пишете в чанке-обёртке сами — никаких ограничений на формат.

Списки

pdoResources

Выборки товаров, статей, услуг. Поддерживает сортировку, фильтры по TV и tpl-чанки — вся вёрстка листингов под вашим контролем.

Карта сайта

pdoSitemap

Генерирует sitemap.xml на лету из дерева ресурсов с учётом published, deleted и searchable. Статический файл не нужен.

Отдельно стоит pdoPage — пагинация. Он умеет отдавать корректные ссылки постраничной навигации и параметр страницы в URL, что критично для правильной обработки листингов роботом. Механика настройки пагинации без потери индексации разобрана в материале про пагинацию и SEO.

Sitemap.xml на MODX без костылей

Карта сайта в MODX делается за пять минут и почти никогда не делается правильно. Схема такая: создаётся новый ресурс с алиасом sitemap.xml, тип содержимого переключается на XML, шаблон — пустой, галка «Использовать HTML-редактор» снимается, «Показывать в меню» снимается. В поле содержимого — вызов pdoSitemap с параметрами.

1

Создайте ресурс sitemap.xml

Алиас — sitemap.xml, тип содержимого — XML, шаблон — «пустой». Обязательно снимите «Использовать HTML-редактор», иначе редактор искорёжит XML-разметку при сохранении.

2

Вызовите pdoSitemap кэшируемо

Вызов через квадратные скобки без восклицательного знака. Карта на тысячу страниц генерируется небыстро — кэш здесь обязателен, иначе каждый запрос робота будет класть базу.

3

Исключите служебные ресурсы

Параметр exclude — id корзины, поиска, страницы благодарности, личного кабинета, служебных контейнеров. Всё, чего не должно быть в индексе, не должно быть и в карте.

4

Снимите searchable у мусорных страниц

pdoSitemap уважает флаг «Доступен для поиска». Это второй контур защиты: снятая галка убирает ресурс и из карты, и из внутреннего поиска.

5

Проверьте отдачу заголовков

Откройте site.ru/sitemap.xml и убедитесь, что приходит Content-Type: application/xml и код 200. Если браузер показывает XML как текст — не переключён тип содержимого ресурса.

6

Пропишите путь в robots.txt и вебмастерах

Директива Sitemap в robots.txt плюс добавление карты в Яндекс Вебмастере и Search Console. Без этого робот найдёт её позже и медленнее.

Важный нюанс с lastmod. pdoSitemap по умолчанию берёт дату editedon ресурса. Если у вас работает автоматическая правка ресурсов скриптом (пересчёт остатков, импорт цен), lastmod будет обновляться на всём сайте каждую ночь. Робот быстро перестанет доверять этому сигналу. Решение — либо отключить вывод lastmod, либо привязать его к отдельному TV, которое меняется только при реальной правке контента. Общие принципы — в руководстве по sitemap.xml, а настройка директив — в инструкции по robots.txt. Кстати, robots.txt в MODX тоже удобно делать ресурсом с типом содержимого text/plain — тогда его правят контент-менеджеры из админки, а не по FTP.

Кэш и скорость: где MODX теряет секунды

MODX быстр, пока вы не сломали ему кэш. И ломают его почти все. Разберём механику.

Два уровня кэширования

Первый уровень — кэш ресурса. При первом запросе MODX собирает страницу и кладёт готовый HTML в файловый кэш. Все последующие запросы отдаются из файла почти без обращений к базе. Второй уровень — кэш вызовов. Каждый тег в шаблоне может быть кэшируемым или нет. Разница в одном символе: кэшируется и попадает в готовый HTML страницы, с восклицательным знаком выполняется при каждом запросе заново.

Восклицательный знак — самый дорогой символ в MODX. Один некэшируемый pdoResources с выборкой на 500 товаров превращает страницу, отдававшуюся за 40 мс из кэша, в страницу с 300 мс на запросы к базе. Достаточно поставить его на меню в общем шаблоне — и весь сайт разом теряет кэш ресурса, потому что страница с некэшируемыми вызовами всё равно требует прохода через парсер.

Что выводитсяКак вызыватьПочему
Меню, крошки, футер — кэшируемо Меняется раз в месяц. Кэшировать обязательно.
Листинг каталога — кэшируемо pdoPage сам управляет кэшем по страницам пагинации.
Форма обратной связи
— некэшируемо
Токен формы и капча уникальны для сессии.
Корзина, счётчик товаров — некэшируемо Зависит от сессии пользователя. Кэшировать нельзя.
Результаты поиска и фильтров Некэшируемо Зависит от параметров запроса.

Правило: некэшируемым делается только то, что физически зависит от пользователя или запроса. Всё остальное — кэшируется. Если персональный блок в общем шаблоне один (корзина в шапке), правильное решение — вынести его в отдельный AJAX-запрос и оставить весь шаблон кэшируемым. Разница на живых проектах — кратная, и она напрямую отражается на Core Web Vitals, в первую очередь на TTFB и LCP.

Дополнительные рычаги производительности

  • Отключить cache_disabled в проде. Настройка cache_disabled должна быть в «Нет». Звучит очевидно, но на половине аудитов мы находим сайты, где кэш выключили при отладке и забыли включить.
  • Сжатие ресурсов. Настройки compress_css и compress_js объединяют и минифицируют файлы, подключённые через регистрацию скриптов. Работает только для того, что подключено штатно, а не хардкодом в шаблоне.
  • Кэш парсера. Настройка cache_scripts кэширует скомпилированные сниппеты — включать обязательно.
  • Chunk вместо файла. Каждый вызов сниппета — это подключение файла. На странице с полусотней мелких вызовов накладные расходы заметны; выносите повторяющуюся статику в чанки.
  • Изображения. MODX не оптимизирует картинки сам. Нужен pThumb или ImagePlus для ресайза и WebP на лету — механика описана в разборе оптимизации изображений.

Отдельно про хостинг. MODX чувствителен к версии PHP и к дисковой подсистеме, потому что кэш файловый. На дешёвом shared-хостинге с медленным диском вы не увидите обещанной скорости даже при идеальном кэше. Связь сервера с позициями разобрана в материале про хостинг и SEO, а общие рычаги ускорения — в статье про скорость загрузки сайта.

Дубли и canonical: где MODX плодит копии

Гибкость MODX имеет цену: система разрешает открыть один ресурс десятком способов и не запрещает это по умолчанию. Типовые источники дублей на MODX-проекте:

  • Доступность по id. При включённых ЧПУ страница часто остаётся доступна и по index.php?id=42. Лечится настройкой friendly_urls_strict и правилом в .htaccess.
  • Главная по двум адресам. site.ru/ и site.ru/index.php — классика. Закрывается 301-редиректом в .htaccess.
  • Слеш и его отсутствие. Определитесь с container_suffix и приведите всё к одному виду редиректом. Смешение /uslugi и /uslugi/ — гарантированные дубли.
  • Регистр. /Uslugi/ и /uslugi/ на Linux-сервере — две разные страницы. friendly_urls_strict отдаёт на второй вариант 404 вместо копии.
  • Фильтры и сортировки. Параметры GET порождают бесконечные комбинации URL. Каждая такая страница должна иметь canonical на базовую категорию — либо, если фильтр коммерчески значим, становиться полноценной посадочной с уникальным title.
  • Пагинация. Страницы 2, 3, 4 не должны быть копиями первой ни по title, ни по canonical.

Canonical в MODX прописывается в шаблоне head одной строкой: берётся TV canonical_url, а при его пустоте фолбэком подставляется полный URL текущего ресурса через https://seo-masters.ru/blog/seo-na-modx. Это даёт корректный canonical на каждой странице без единого плагина. Полная механика — в разборе canonical и дублей страниц, а специфика фильтров каталога — в материале про фасетную навигацию.

На MODX не бывает «неожиданных» дублей. Каждый дубль на MODX-сайте — это строчка, которую кто-то не написал в .htaccess или в шаблоне. Хорошая новость: значит, каждый из них закрывается за один вечер.

Мультирегиональность: контексты против папок

MODX — одна из немногих CMS, где мультирегиональность решается архитектурно, а не костылём. Инструмент называется контексты. Контекст — это изолированное пространство со своим деревом ресурсов и, что важнее, со своим набором системных настроек: base_url, site_url, site_start, cultureKey. Фактически один экземпляр MODX обслуживает несколько независимых сайтов из одной админки.

Схема с поддоменами на контекстах

Классика для регионального продвижения: msk.site.ru, spb.site.ru, ekb.site.ru. Каждый поддомен — отдельный контекст со своим site_url и своим деревом. Роутинг настраивается через сниппет-обработчик в правилах контекста, который смотрит на HTTP_HOST и переключает контекст. Плюсы очевидны: полная изоляция контента, свои цены и телефоны, независимая привязка региона в Яндекс Вебмастере, отдельная внутренняя перелинковка. Минус — контент нужно наполнять для каждого региона, а на десяти поддоменах с одинаковыми текстами вы получите не рост, а региональные дубли.

Схема с папками

Альтернатива — /msk/, /spb/ внутри одного домена. Проще в реализации (обычные контейнеры в дереве), весь ссылочный вес копится на одном хосте, не нужно возиться с SSL для поддоменов. Минус — привязка региона в Вебмастере на уровне папок работает хуже, чем на уровне поддомена. Что выбрать под конкретный бизнес — подробно в материале про региональное SEO.

КритерийКонтексты + поддоменыПапки в одном контексте
Изоляция настроек Полная: свой base_url, cultureKey, шаблоны Нет, настройки общие
Привязка региона Точная, на уровне хоста Ограниченная
Ссылочный вес Дробится между поддоменами Копится на одном домене
Сложность внедрения Высокая: роутинг, SSL, дубли шаблонов Низкая
Риск дублей Высокий при копировании текстов Высокий при копировании текстов
Кому подходит 10+ регионов, разные прайсы и склады 2–5 регионов, единый прайс

Для многоязычных проектов контексты дают ещё один бонус: в каждом задаётся cultureKey, а hreflang собирается в шаблоне перебором контекстов. Правило неизменно: hreflang должен быть взаимным (каждая версия ссылается на все остальные и на себя) и содержать x-default.

Чек-лист настройки MODX под SEO

Последовательность, по которой мы принимаем MODX-проект в работу. Порядок не случаен: каждый следующий пункт опирается на предыдущий.

1

ЧПУ и зеркала

friendly_urls, friendly_alias_urls, use_alias_path — включены. Транслитерация работает. .htaccess склеивает www/без-www и гонит на HTTPS одним 301-редиректом без цепочек.

2

TV-поля под метатеги

seo_title, seo_description, canonical_url, noindex заведены и привязаны к нужным шаблонам. В шаблоне прописан фолбэк — пустых title на сайте физически быть не может.

3

Canonical на каждой странице

Строка в head с фолбэком на полный URL ресурса. Фильтры и пагинация указывают на базовую категорию либо имеют собственный уникальный canonical.

4

Sitemap.xml и robots.txt ресурсами

Оба сделаны ресурсами MODX с правильным типом содержимого. Служебные страницы исключены. Директива Sitemap прописана, карта добавлена в вебмастера.

5

Ревизия кэша

Поиск по шаблонам всех вхождений восклицательного знака в тегах. Каждый некэшируемый вызов обоснован сессией или параметром запроса. Остальные — снимаются.

6

Заголовки и структура

Ровно один H1 на страницу, иерархия H2–H3 без пропусков уровней. В MODX это целиком ответственность шаблона — проверяется просмотром исходного кода.

7

Микроразметка

JSON-LD прямо в шаблоне с подстановкой полей ресурса: Organization на главной, BreadcrumbList на всех, Product или Article по типу страницы.

8

404 и коды ответа

error_page настроен на реальный ресурс, отдающий код 404, а не 200 с текстом «страница не найдена». unauthorized_page — отдельно. Проверка кодов ответа обязательна.

9

Скорость

pThumb и WebP на изображениях, compress_css и compress_js включены, кэш парсера работает, PHP актуальной версии, OPcache на сервере включён.

10

Финальный краулинг

Обход сайта краулером: битые ссылки, цепочки редиректов, дубли title, пустые description, коды ответа. Это точка приёмки — до неё проект не считается настроенным.

Минусы MODX, о которых честно

Было бы нечестно закончить на комплиментах. У MODX есть реальные ограничения, и их нужно знать до выбора платформы.

Порог входа. На MODX нельзя посадить контент-менеджера без обучения и надеяться, что он не сломает шаблон. Здесь нет визуального конструктора страниц уровня Tilda — и это осознанный компромисс, о котором мы пишем в сравнении SEO на Tilda. Проекту на MODX постоянно нужен разработчик, который понимает синтаксис тегов и логику кэша.

Экосистема меньше. Компонентов в разы меньше, чем плагинов у WordPress. Часть популярных решений поддерживается силами энтузиастов и обновляется нерегулярно. Если нужен модуль под редкую задачу, скорее всего, его придётся писать. Сравнение подходов — в материалах про SEO на WordPress и SEO на 1С-Битрикс.

Всё нужно делать руками. То, что на других CMS ставится галочкой, здесь пишется в шаблоне. Это плюс для качества и минус для сроков. Стартовые сроки настройки MODX-проекта выше, зато техдолга на выходе меньше.

Кэш требует дисциплины. Один неаккуратный восклицательный знак разработчика — и производительность падает без единой ошибки в логах. Проблема не диагностируется сама: сайт просто медленный.

Вывод простой. MODX — отличный выбор для корпоративных сайтов, каталогов услуг, проектов с нестандартной структурой данных и для тех, кто готов вкладываться в качество технической базы. Он плохой выбор для проекта без бюджета на разработку, потому что MODX не прощает «сделаем как-нибудь, потом поправим». Если сайт только проектируется, обсудите платформу на этапе создания сайта: правильно выбранная CMS экономит месяцы. Примеры MODX-проектов, которые мы вывели в ТОП, есть в портфолио, а пока техническая база настраивается и сайт ждёт переиндексации, трафик разумно подстраховать контекстной рекламой.

Частые вопросы

MODX хуже или лучше WordPress для SEO?

Технически MODX даёт больше контроля: чистый HTML без навязанной вёрстки, произвольные поля, полная свобода в микроразметке. WordPress даёт быстрый старт за счёт готовых плагинов, но взамен привносит чужую разметку и накладные расходы. Практический ответ: при равной квалификации команды MODX-сайт технически чище и быстрее, при слабой команде WordPress безопаснее, потому что плагин закроет базовые вещи автоматически. Выбор платформы вторичен по отношению к тому, кто с ней работает.

Нужен ли на MODX отдельный SEO-модуль?

В большинстве случаев нет. TV-поля под title, description и canonical плюс фолбэки через фильтры вывода закрывают задачу лучше любого универсального модуля и без накладных расходов. Отдельные компоненты имеют смысл, когда нужны массовые шаблоны генерации метатегов по правилам для большого каталога — тогда посмотрите в сторону специализированных решений экосистемы. Но начинать нужно с TV.

Почему сайт на MODX тормозит, хотя MODX считается быстрым?

Почти всегда причина одна — сломанный кэш. Ищите в шаблонах теги с восклицательным знаком: , . Каждый такой вызов выполняется при каждом запросе и лишает страницу кэша. Вторая по частоте причина — выключенная настройка cache_disabled, оставшаяся с отладки. Третья — неоптимизированные изображения без pThumb. Проверьте эти три вещи прежде, чем менять хостинг.

Как сделать sitemap.xml на MODX?

Создайте ресурс с алиасом sitemap.xml, тип содержимого — XML, шаблон — пустой, снимите галку HTML-редактора и «Показывать в меню». В содержимое поместите кэшируемый вызов pdoSitemap с параметром exclude, где перечислены id служебных страниц. Проверьте, что по адресу отдаётся код 200 и заголовок application/xml, затем пропишите путь в robots.txt и добавьте карту в Яндекс Вебмастер и Search Console.

Что такое контексты в MODX и зачем они SEO?

Контекст — изолированное пространство со своим деревом ресурсов и своими системными настройками, включая base_url и cultureKey. Для SEO это готовый механизм мультирегиональности и мультиязычности: один экземпляр MODX обслуживает msk.site.ru и spb.site.ru как независимые сайты из одной админки, с раздельной привязкой регионов и своими шаблонами. Главный риск — копирование одинаковых текстов по регионам: это даёт не рост, а региональные дубли.

Как включить ЧПУ на MODX и не потерять позиции?

Включаются настройки friendly_urls, friendly_alias_urls и use_alias_path плюс переименование ht.access в .htaccess. Опасность — в use_alias_path: при его включении на живом сайте меняются все адреса разом. Порядок безопасного перехода такой: выгрузите текущие URL краулером, составьте карту соответствий старый-новый, подготовьте 301-редиректы, включите настройку и залейте редиректы одновременно, затем отслеживайте переиндексацию в вебмастерах. Без карты редиректов вы обнулите накопленные позиции.

Можно ли перенести сайт на MODX с другой CMS без потери трафика?

Можно, но переезд — самая рискованная операция в SEO. Обязательны: полная выгрузка старых URL, карта 301-редиректов на новые адреса один-к-одному, сохранение текстов и метатегов, перенос структуры без «улучшений» на первом этапе и контроль индексации в первые недели. Меняйте либо CMS, либо структуру — но не то и другое сразу. Детально механика описана в материале про миграцию сайта без потери трафика.

Какие компоненты MODX обязательны для SEO?

Минимальный набор: pdoTools (меню, крошки, выборки, sitemap, пагинация), транслитерация для русских алиасов, pThumb или ImagePlus для ресайза изображений и WebP. Для интернет-магазина добавляется miniShop2. Всё остальное — по задаче. Обратите внимание: чем меньше компонентов, тем быстрее сайт, поэтому ставить «на всякий случай» не нужно.

SEO-продвижение сайтов с 2005 года

Настроим и продвинем ваш сайт на MODX

Разберём ЧПУ, кэш, метатеги, дубли и sitemap, доведём техническую базу MODX до идеала и приведём трафик из Яндекса и Google. Прозрачный договор, отчёты каждую неделю.

  • Пакет «Старт» от 55 000 ₽/мес
  • Пакет «Стандарт» 75 000 ₽/мес
  • Пакет «Премиум» 95 000 ₽/мес
  • Бесплатный аудит и прогноз
  • Договор с гарантией результата
  • Отчёты каждую неделю

Комментарии (14)

Кирилл

Фраза про то, что восклицательный знак — самый дорогой символ в MODX, должна висеть в рамке над столом у каждого разработчика. Полез в шаблоны после статьи и нашёл в общем хедере. Пять лет так жили.

Наталья_В

Спасибо за таблицу с системными настройками, особенно за friendly_urls_strict — про неё нигде толком не пишут. У нас как раз сайт открывался и по /Uslugi/, и по /uslugi/, я думала это нормально и так у всех.

AdminSEO Мастер

Наталья, не у всех, но у очень многих — это классика MODX. Включайте friendly_urls_strict и сразу после этого прогоните сайт краулером: если где-то в шаблонах ссылки прописаны руками с другим регистром, они начнут отдавать 404. Проверить это лучше до того, как заметит робот.

Ольга П.

Подход с TV-полями вместо SEO-модуля выглядит логично, но у меня контент-менеджер и так путается в админке. Не превратится ли это в шесть незаполненных полей на каждой карточке?

AdminSEO Мастер

Ольга, для этого в статье и описан фолбэк через :default= — незаполненное поле не создаёт проблемы, title всё равно соберётся из pagetitle и бренда. Менеджеру достаточно заполнять seo_title только на приоритетных посадочных, остальное закроет шаблон. Плюс TV можно сгруппировать в отдельную вкладку, чтобы не мешались на главном экране.

vladimir77

Нюанс с lastmod и ночным импортом цен — это прямо про нас. Каждое утро вся тысяча страниц с новой датой. Спасибо, теперь понятно, почему робот на это забил.

Дмитрий

Спорно про «MODX технически чище WordPress». Чище он у того, кто умеет. У большинства заказчиков сайт делал фрилансер за 30 тысяч, и там ни canonical, ни sitemap. На WP хотя бы плагин базу закроет.

AdminSEO Мастер

Дмитрий, справедливо, и в статье ровно об этом же в разделе про минусы: платформа вторична по отношению к тому, кто с ней работает. MODX не прощает «сделаем как-нибудь», и без бюджета на разработку это действительно плохой выбор. Мы бы сформулировали так: MODX поднимает потолок качества, но не поднимает пол.

Ирина

Сделала robots.txt ресурсом с типом text/plain, как в статье. Мелочь, а теперь не бегаю к разработчику по FTP из-за каждой строчки.

Сергей_бизнес

У нас четыре региона и единый прайс. По вашей таблице выходит, что папки, а подрядчик третий месяц продаёт контексты с поддоменами. Теперь есть чем аргументировать.

Максим

А что если use_alias_path нужно включить на сайте, где уже есть трафик, но полной выгрузки старых URL нет — сайт большой и часть страниц никуда не линкуется? Как собрать карту редиректов, чтобы ничего не потерять?

AdminSEO Мастер

Максим, краулер видит только связанное дерево, поэтому источники берите шире: выгрузка страниц из Яндекс Вебмастера и Search Console, отчёт по посадочным из Метрики за год и логи сервера. Плюс у вас есть база MODX — список алиасов и id можно выгрузить прямо из таблицы ресурсов, это даст полный перечень независимо от перелинковки. Если хотите, приходите на бесплатный аудит, мы такую карту собираем на старте проекта.

Анна Т.

Про хвост в title «купить в Москве недорого, цены от производителя» на всех карточках — узнала свой сайт и стало неловко. Иду переписывать шаблон фолбэка.

Пётр_Казань

Перевели корпоративный сайт с самописа на MODX два года назад. Первые месяцы было больно, зато сейчас любую правку в шаблоне делаю сам за десять минут. За год спокойно вышли на пару тысяч визитов в месяц из поиска, без магии — просто структура и метатеги в порядке.

Лариса

А почему в списке обязательных компонентов нет ничего для редиректов? Или их только через .htaccess?

AdminSEO Мастер

Лариса, зеркала и общие правила (www, HTTPS, слеш) всегда лучше держать в .htaccess — это быстрее и не требует запуска PHP. Компоненты для редиректов удобны, когда карту ведут контент-менеджеры и адресов сотни. Главное правило одно: никаких цепочек, каждый старый URL ведёт на конечный новый одним 301.

Егор

Только новичкам совет: не забудьте снять галку HTML-редактора на sitemap.xml. Я забыл и полдня не мог понять, откуда в XML взялись теги p.

Марина_К

Чек-лист из десяти пунктов забрала целиком, буду сверяться при приёмке от подрядчика. Особенно пункт про финальный краулинг как точку приёмки — раньше принимали на глаз.

Тимур

Хороший разбор, но про cache_disabled прямо в точку. У нас его выключил разработчик при отладке в феврале, нашли только в мае, когда сайт начал ощутимо тупить под нагрузкой.

Оставить комментарий

Спасибо! Ваш комментарий отправлен на модерацию и появится после проверки.