SEO оптимизация сайта на MODX Revolution

Насколько MODX Revolution подходит для создания сайта, который будет продвигаться в поисковых системах?

Если кратко - то на пятерку. Возможно что с небольшим минусом, но только с небольшим. В целом же MODX Revolution, при должной настройке, у любого SEO-оптимизатора вызовет одобрение, так как трудностей с ним будет очень мало.

Рассмотрим основные моменты настройки сайта на MODX Revolution для его успешного дальнейшего продвижения.

1. Использовать www перед адресом сайта или нет?

MODX Revolution все равно, будет ли у вас имя сайта начинатся с www или нет. Вы сами выбираете это. Разработчики MODX предусмотрели возможность указать вариант использования доменного имени.

Для этого вам необходимо открыть файл .htaccess в корне сайта и найти в его начале 2 закомментированных блока:

# Rewrite www.domain.com -> domain.com -- used with SEO Strict URLs plugin
#RewriteCond %{HTTP_HOST} .
#RewriteCond %{HTTP_HOST} !^example-domain-please-change\.com [NC]
#RewriteRule (.*) http://example-domain-please-change.com/$1 [R=301,L]
#
# or for the opposite domain.com -> www.domain.com use the following
# DO NOT USE BOTH
#
#RewriteCond %{HTTP_HOST} .
#RewriteCond %{HTTP_HOST} !^www\.example-domain-please-change\.com [NC]
#RewriteRule (.*) http://www.example-domain-please-change.com /$1 [R=301,L]

Раскомментируйте один из них и замените адрес домена на свой. Теперь при неверном наборе адреса будет происходить 301 редирект на правильный вариант. Это самое лучшее решение для этой ситуации.

2. Настройка ЧПУ (человеко-понятные урл)

MODX Revolution полностью поддерживает ЧПУ, обеспечивая страницам красивые адреса. Правда по-умолчанию этот функционал отключен.

Для его включения необходимо в системе управления перейти в раздел "Система"->"Настройка системы" и в фильтре выбрать "Дружественные URL".

Friendly URL`s MODX Settings

Откроется ряд настроек, связанных с работой механизма Friendly URL`s.

Необходимо установить следующие значения для основных из них:

  • automatic_alias - Да
  • friendly_urls - Да
  • use_alias_path - Если Да - то адреса будут вложенными, если Нет, то вложенности не будет
  • global_duplicate_uri_check - проверяет адреса страниц на уникальность, орбязательно Да, если в прошлом пункте вы выбрали Нет

3. Установка пакета Translit

Дополнение translit (его можно установить через раздел "Управление пакетами") позволит автоматически генерировать значение поля "Псевдоним" латинскими буквами при редактировании документа. Хотя мы только что включили настройку automatic_alias, и MODX начал заполнять это поле, но заполняет он его в том числе и русскими буквами.

После установки пакета translit необходимо снова вернутся в раздел "Настройки системы", найти параметр friendly_alias_translit и присвоить ему значение russian:

Friendly URL`s russian

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

4. Meta теги title (Заголовок), keywords (Ключевые слова), description (Описание)

MODX Revolution предлагает вам слеудующих набор полей, которые могуть использоваться для управления Meta тегами:

  • pagetitle — основной заголовок;
  • longtitle — расширенный заголовок;
  • menutitle — заголовок для отображения в меню;
  • description — описание страницы,

Вот тут, на наш взгляд, и есть небольшой минус MODX Revolution, так как нет однозначного соответствия имеющихся полей и требуемых нам.

Бывает достаточно трудно задать title страницы, для него не предусмотрено отдельное поле, приходится как-то комбинировать из pagetitle и longtitle, а поле для keywords вообще не предусмотрено.

Исправляем. Необходимо создать 3 новых TV поля: seoTitle, seoKeywords, seoDescription, задать им категорию Seo, у первых двух тип ввода Тест, у последнего Текстовая область. Эти TV поля дослжны быть доступны для всех шаблонов сайта.

SEO поля MODX Revolution

Отлично, теперь мы можем совершенно независимо задать title, keywords, description для любой страницы сайта.

Чтобы не заполнять всегда эти и перечисленные выше поля в обязательном порядке, мы используем пару небольших сниппетов, которые проверяют поля на то, пустые они или нет, и выводят значение нужного поля.

seoTitle - формирует значение тега title.

Пример вызова:

<title>[[seoTitle]]</title>
Исходный код:
$pagetitle = $modx->resource->get("pagetitle");
$longtitle = $modx->resource->get("longtitle");
$seotitle = $modx->resource->getTVValue("seoTitle");
$sitename = $modx->config["site_name"];
$v = '';
if($seotitle != ''){
 $v = $seotitle;
}
else{
 if($longtitle == ''){
 $v = $pagetitle;
 }
 else{
 $v = $longtitle;
 }
}
# иной алгоритм для главной страницы
if($modx->config["site_start"] == $modx->resource->get("id")){
 return $v;
}
return $v." - ".$sitename;

pageTitle - формирует заголовок для страницы, тег h1.

Пример использования:

<h1>[[pageTitle]]</h1>

Исходный код:

$longtitle = $modx->resource->get("longtitle");
if($longtitle != ''){
 return $longtitle;
}
return $modx->resource->get("pagetitle");

Таким образом при минимальном заполнении страницы достаточно заполнить pagetitle, но в тоже время вы можете указать значения полей longtitle, seoTitle и других.

5. Настройка страницы с 404 ошибкой

Все что вам нужно, что бы MODX отображал корректную страницу с ошибкой 404, это создать ее, обязательно опубликовать (но скрыть в меню), и изменить значение настройки error_page на id вашей страницы:

Настройка 404 страницы

Надо заметить, что MODX корректно возвращает 404 код ошибки при попытке просмотра несуществующей страницы.

6. Sitemap.xml

Наличие файла sitemap.xml для современного сайта весьма важно. Для MODX Revolution есть отличное дополение, которое позволит сформировать вам этот файл с минимальными затратами.

  • Скачиваем и устанавливаем пакет GoogleSiteMap
  • Создаем в корне сайта новый документ, называем его sitemap.xml, в поле псевдоним пишем sitemap (без xml!), шаблон пустой. Переходим на вкладку "Настройки" и в поле Тип содержимого ставим XML. Также необходимо снять галочки "Доступен для поиска" и "Использовать HTML редактор".
  • В поле "Содержимое ресурса" помещаем вызов сниппета GoogleSiteMap.
  • Публикуем ресурс.

Наш файл должен открываться по адресу http://ваш-сайт/sitemap.xml и быть похожим на http://www.createit.ru/sitemap.xml

На официальной странице документации GoogleSiteMap доступно описание всех параметров сниппета: http://rtfm.modx.com/display/ADDON/GoogleSiteMap

7. Robots.txt

Содержимое этого файла для MODX Revolution зависит от конкретного сайта, самое минимальное может быть таким:

User-agent: *
Disallow: /manager/
Host: ваш-сайт.ru

Мы добавили одно единственное правило, запрещающее индексацию страницы входа в административную часть.

8. Суффиксы адресов страниц

Вы можете указать произвольные суффиксы для страниц различных типов у сайтов, созданных на MODX Revolution.

Например:

  • /page1.html, /page1/page2.html
  • /page1/, /page1/page2/

Для этого необходимо открыть раздел "Система"->"Типы содержимого" и задать необходимые настройки. Пример настроек для 2-го варианта:

Суффиксы страниц

Обратите внимание, что суффикс для страницы-контейнера задается в Настройках, за него отвечает параметр container_suffix.