Skip to content
msCatalyst
msCatalyst
Фасетный фильтр, поиск и синхронизация каталога для miniShop2 и MiniShop3
  • MODX 2
  • MODX 3
  • miniShop2
  • miniShop3
  • PHP 7.2
  1. Компоненты
  2. msCatalyst
  3. SEO

SEO ​

Мета-теги и индексация ​

  • На страницах с выбранными фильтрами или поиском сниппет добавляет <meta name="robots" content="noindex, follow">. Страницы пагинации без фильтров остаются в индексе. Отключается параметром &noindexFiltered=`0`. С ЧПУ-адресами часть таких страниц остаётся в индексе, см. «Индексация ЧПУ-страниц» ниже.
  • AJAX-ответы отдаются с заголовком X-Robots-Tag: noindex, nofollow.
  • Ссылки пагинации и крестики у выбранных фильтров настоящие, с href. Поисковый робот может пройти по ним без JavaScript.
  • Для <title>, H1, description и <link rel="canonical"> используйте плейсхолдеры mscatalyst.title, mscatalyst.h1, mscatalyst.description и mscatalyst.canonical, см. Плейсхолдеры страницы.

Шаблоны title, H1 и description ​

Шаблоны задаются в системных настройках и срабатывают, когда выбран хотя бы один фильтр:

НастройкаПо умолчанию
mscatalyst_seo_title_filtered —
mscatalyst_seo_h1_filtered:
mscatalyst_seo_description. . Найдено:

Подстановки: , (выбранные значения и поисковый запрос), , .

Режимы ​

Режим задаётся параметром &seo или настройкой mscatalyst_seo_mode, если параметр не указан.

РежимЧто делает
offЧПУ фильтров нет, адрес с GET-параметрами.
nativeСвои ЧПУ-адреса фильтров. Адреса разбирает плагин на OnPageNotFound.
seofilterМост к SeoFilter на MODX 2.
bothSeoFilter и свои адреса вместе.

Свои ЧПУ-адреса ​

С &seo=native`` каждый выбранный фильтр становится сегментом адреса:

/catalog/vendor-nike/color-krasnyy-or-siniy/price-1000-2000/

Сегмент начинается с ключа фасета. Значения берутся из подписей и переводятся в латиницу, несколько значений соединяются через -or-. У диапазона после ключа идут границы «от» и «до».

Как включить ​

  1. Включите дружественные URL MODX (friendly_urls).
  2. Поставьте системную настройку mscatalyst_seo_mode в native или both. Плагин читает только настройку, параметр &seo в вызове его не включает.
  3. Адрес раздела каталога должен заканчиваться на /. С суффиксом .html и на сайтах без ЧПУ фильтры остаются в GET-параметрах.
  4. Плагин msCatalyst должен висеть на событиях OnPageNotFound и OnWebPagePrerender. Установщик 1.3.0 подключает оба.

Как ведёт себя адрес ​

  • Фильтры уходят в путь, а сортировка, номер страницы, число товаров и поиск остаются в строке запроса: /catalog/vendor-nike/?page=2&sort=ms-price-asc.
  • AJAX-переходы, пагинация, крестики у выбранных значений, «Сбросить всё», «Назад» и «Вперёд» работают с этими адресами.
  • Старые ссылки с GET-фильтрами (/catalog/?vendor=31) и значения в другом порядке получают 301 на один адрес. Значения внутри сегмента и сами сегменты идут в постоянном порядке, поэтому у каждой выборки один URL.
  • Если какой-то сегмент не удалось разобрать (неизвестный ключ или значение, дубль ключа, пустой диапазон), посетитель получает страницу 404. Каталог под чужим адресом не открывается.
  • Каталог на главной странице тоже работает: /vendor-nike/.
  • С Localizator языковой префикс остаётся в начале адреса: /en/vendor-nike/color-white/. В каждом языке сегменты строятся из его подписей. Русский сегмент на английской версии получает 301 на английский.

Индексация ЧПУ-страниц ​

Страница с ЧПУ-адресом остаётся в индексе, если на ней выбрано не больше mscatalyst_seo_index_max значений (по умолчанию 2). Диапазоны, поиск, сортировка не по умолчанию, другое число товаров на странице и больше значений получают noindex, follow. При 0 все страницы с фильтрами закрыты от индексации. Пока ЧПУ выключены, работает прежнее правило &noindexFiltered.

mscatalyst.canonical содержит полный адрес со схемой и доменом, без сортировки и номера страницы. Языковой префикс в него уже входит. Выведите его в <head> шаблона как есть:

modx
<link rel="canonical" href="[[!+mscatalyst.canonical]]">

Карту адресов фильтров и посадочных отдаёт сниппет msCatalystSitemap:

modx
[[!msCatalystSitemap? &catalogs=`*`]]

Посадочные страницы ​

Своя страница со своим адресом, title, H1 и текстом для сочетания фильтров, например /catalog/belye-krossovki/. Работает в режиме native на MODX 2 и MODX 3, SeoFilter не нужен. См. Посадочные страницы.

SeoFilter ​

Если SeoFilter на сайте уже настроен, msCatalyst переносит к себе его правила, адреса и словарь, а шаблоны с [[+sf.*]] продолжают работать. Пока SeoFilter остаётся на сайте с MODX 2, режимы seofilter и both работают как мост к нему. См. Переход с SeoFilter.