Автоматическая генерация пути (path) для ноды (node) в drupal

Ещё одна типовая задача при создании сайтов — это формирование «человекопонятных путей» для ваших публикаций. Можно прописывать их вручную, но удобнее, если такая механическая работа будет выполняться самим сайтом.

Я подразумеваю, что штатный модуль path включен, и вы не хотите по каким то причинам использовать готовые решения по автоматизации. Мне лично кажется, что более правильно включить 30-40 строк в собственный модуль, чем устанавливать дополнительно сторонний модуль.

Для начала зацепимся за hook nodeapi. В путь можно включить значение node id, что позволит сделать его гарантированно уникальным. Ещё я обычно добавляю в путь тип публикации (node type). А основа для составления пути — название публикации, которое мы будем подвергать транслитерации.

Вы можете для каждого типа (node->type) создать собственные правила генерации пути, исходя из соображений SEO или личных предпочтений.

А вот пример функции транслитерации. Она работает с кириллицей UTF-8, преобразуя символы в аналоги на латинице. Кроме кириллицы, она ставит соответствие для ряда прочих символов (скобок, знаков препинания и т.п.). Остальные символы пропускаются.

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

Контекстное задание значений фильтров представлений модуля views

Апрель 22, 2017 г.

Views оказался настолько популярным модулем, что его даже включили в 8-ю версию Drupal. Он может формировать разделы сайта, блоки, быть источником списков и т.п. Но передача внешних параметров многообразием не отличается. Не хватает очень важного обработчика ...

Читать

Ошибка обновления metatag remove_robots_noydir_noodp

Май 24, 2023 г.

Если у вас собран Drupal + Commerce, то, возможно, при обновлении модуля метатегов возникает ошибка. Модуль не находит таблицы мета информации для сущности commerce_product и прерывается с выводом сообщения: [crayon-6af59fd9c6366711762470/] ...

Читать

Формирование одиночного чекбокса в Drupal 7 Webform

Ноябрь 23, 2025 г.

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

Читать

Создание контроллера для скачивания файла в Drupal

Сентябрь 6, 2023 г.

Пример кода, реализующий endpoint скачиваемого файла. [crayon-6af59fd9c665d856240045/] Кроме контроллера, вам потребуется еще задать маршрут. Пример описания маршрута: [crayon-6af59fd9c6666504521032/]

Читать
 

Комментарии к «Автоматическая генерация пути (path) для ноды (node) в drupal»

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



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