Массовая SEO (поисковая) оптимизация подразумевает возможность одновременной настройки шаблонов мета-тегов для группы страниц, удовлетворяющих определённым условиям. Помимо мета-тегов, сюда также относятся H1 заголовок и любые информационные блоки, отображаемые на странице.
Для настройки мета-тегов используем одноимённое решение — модуль Metatag и его подмодули:
- Базовый модуль позволяет настраивать шаблоны мета-тегов по типам сущностей.
- Для настройки мета-тегов в представлениях используем подмодуль metatag_views.
- Для настройки мета-тегов на произвольных страницах используем подмодуль metatag_context.
Модуль Context позволяет настраивать реакции для заданных условий. Одной из таких реакций является переопределение мета-тегов, которая доступна после установки подмодуля metatag_context. Для переопределения H1 заголовка используем соответствующую реакцию из модуля Title Override с этим патчем. Вывод информационных блоков также следует реализовать в виде реакций для модуля context, это позволит выполнять настройку более централизованно. Реакция для работы с блоками уже имеется в самом модуле. В зависимости от исходных требований функционал информационных блоков может быть реализован в виде отдельного самописного решения, однако, в общем случае следует придерживаться идеи расширения функционала модуля context через добавление плагинов условий и реакций.
В модуле context есть больше десятка готовых условий для управления диапазоном страниц, на которых будут выполняться заданные реакции. Два условия напрямую оперируют URL-адресом страницы — это условия «Path» и «Query string», которые оперируют путём и строкой параметров страницы, соответственно. Использование этих двух условий, а также их комбинаций с другими условиями, позволяет выполнять рассмотренные выше реакции для произвольных групп страниц на сайте.
Основа любых шаблонов в Drupal — это модуль Token. На больших сайтах загрузка дерева токенов может требовать много времени и много памяти, в ряде случаев оно не загружается вовсе. Для решения этой проблемы используем модуль Fast Token Browser.
В случае, когда на сайте имеется каталог с фасетными фильтрами, используем модуль Facets Tokens. Модуль предоставляет токены для подстановки значений в зависимости от активных фасетов на текущей странице. В отличие от токенов из модуля Facet API, здесь не требуется непосредственное указание активного фасета, для которого извлекаются токены, а также имеется поддержка множественных значений.
Для упрощения настройки контекста рекомендуется использование модуля Facet API Pretty Paths. В этом случае страницы фильтров будут иметь уникальные пути без привязки к строке параметров, от условия «Query string» можно будет отказаться.
Наконец, при настройке шаблонов можно столкнуться с тем, что итоговые значения не соответствуют нормам русского языка. В этом случае есть два решения:
- Используем модуль Token Morpher, для его работы потребуется покупка и установка PHP расширения Морфер.
- Используем дополнительные поля сущностей, в которых указываем подставляемые значения в нужных словоформах. Это накладывает ограничение, требующее, чтобы заменяемый токен всегда был связан с какой-нибудь сущностью, чьи поля можно будет использовать. Для фасетов используем доработку модуля Facets Tokens (пока не реализована), позволяющую ссылаться на поля связанной сущности. Также добавляет ограничение — значения фасетов, используемых в шаблонах, должны ссылаться на сущности.
Решение из пункта 2 можно использовать для реализации функционала синонимов.
Добавить комментарий