Настройка ЧПУ в Drupal 10: path_alias, Pathauto и Token

Drupal — мощная, гибкая и в то же время довольно сложная CMS. Один из важных аспектов SEO и удобства пользователей — это ЧПУ (человекопонятные URL). В этой статье мы рассмотрим, как настроить такие адреса в современных версиях Drupal (9 и 10) с помощью ядра и популярных модулей.

Что такое ЧПУ и зачем они нужны

ЧПУ — это адреса страниц, которые легко читаются и запоминаются. Например, вместо адреса вида:

вы получите:

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

Основные инструменты

Ядро: path_alias

В Drupal 10 модуль Path включён в ядро и позволяет вручную задавать URL-алиасы для каждого материала. Это и есть базовый механизм ЧПУ:

  • Перейдите на страницу редактирования ноды.
  • Найдите вкладку «URL alias».
  • Введите желаемый путь: например, /articles/seo/drupal-chpu

Однако при большом объёме контента вручную прописывать алиасы — задача трудоёмкая. Здесь на помощь приходит модуль Pathauto.

Pathauto

Pathauto автоматически генерирует алиасы на основе шаблонов. Например, для всех статей можно задать шаблон:

Чтобы использовать Pathauto:

  • Установите модули pathauto и token (второй требуется для подстановок).
  • Перейдите в Configuration → Search and metadata → URL aliases → Patterns.
  • Создайте шаблоны для различных сущностей (ноды, таксономии, пользователей).
  • После сохранения шаблонов можно запустить массовую генерацию для старых нод во вкладке Bulk generate.

Token

Модуль Token предоставляет гибкую систему подстановок. Например:

  • [node:title] — заголовок материала
  • [user:name] — имя автора
  • [current-date:custom:Y/m] — текущая дата

Комбинируя токены, можно настроить адреса по нужному вам шаблону: например, для блога с датами:

Практические советы

Дополнительно к основному списку, не лишним будет упомянуть и о других полезных модулях.

  • Используйте латиницу или транслитерацию (можно подключить модуль Transliteration).
  • Проверяйте, чтобы URL не содержали повторяющихся или дублирующих путей.
  • Настройте редиректы со старых URL с помощью модуля Redirect, если структура меняется.

Настройка ЧПУ в Drupal сегодня — это несложно, особенно при наличии модулей pathauto, token, и redirect. Современные версии CMS Drupal предоставляют удобные инструменты, позволяющие автоматизировать большую часть работы и обеспечить чистую, SEO-дружественную структуру URL.

Если вы только переходите с Drupal 7 — учтите, что многие модули, ранее сторонние, теперь включены в ядро, а интерфейс стал более удобным и логичным.

Мало букафф? Читайте есчо !

Загрузка файла через форму в Drupal

Май 19, 2023 г.

Посмотрим как получить непосредственный доступ к файлу без загрузки файла в хранилище, при его загрузке в поле типа "file" Form API. Много гайдов посвящено тому как использовать поле managed_file, а для unmanaged случая считается, что разработчик ...

Читать

Реализация контроллера для списка autocomplete формы

Май 11, 2023 г.

См. основной материал для введения. Контроллер должен вернуть Json набор пар значений value - label. Ранее в модуле мы уже объявили связь для маршрутизации с нашим контроллером в файле custom_blocks.routing.yml. Теперь реализуем код. /src/Controller/ProductSearchAutoCompleteController.php ...

Читать

Управление размерами autocomplete ui widget в Drupal

Октябрь 25, 2023 г.

Попался мне UI баг, когда autocomplete слой с результатами поиска оказывался больше по ширине, чем input элемент, к которому он был прикреплен. Не ясен был алгоритм, по которому вычислялась ширина слоя. В одних случаях это происходило корректно, ...

Читать

Генерация JWT токена в Drupal

Июль 30, 2023 г.

Модуль jwt реализует REST аутентификацию, настройку ключа и многое другое. Небольшой спиппет как сгенерировать и отправить jwt с собсвенной нагрузкой. Передадим токен, в котором полезной нагрузкой будет ID пользователя. А время жизни токена - 1 ...

Читать
 

Комментарии к «Настройка ЧПУ в Drupal 10: path_alias, Pathauto и Token»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: