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

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

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

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

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

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

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

Выгрузка словарей таксономии в csv из Drupal

Декабрь 27, 2016 г.

Понадобилась выгрузка всей кучи словарей в текстовом виде. Не для импорта, а так: редакторам на сайте не удобно по словарям ползать и смотреть, что есть, а чего нет. Дело, конечно, вкуса. Посмотрел для начала готовые модули. Все они заточены под ...

Читать

Организуем автодеплой изменений из репозитория для проекта на Drupal

Август 23, 2018 г.

Когда над проектом работает несколько разработчиков, то возникают определенные структурные и организационные вопросы. Каждый программист обычно работает ...

Читать

Выполнение php кода через drush

Март 24, 2020 г.

Для отладки или выполнения какого то разового кода иногда требуется выполнить php код в системном окружении вашего сайта на Drupal. Без drush приходится добавлять код вроде следующего в файл темы (а в последствии его удалять от туда): [crayon-69213ae271a88729356884/] ...

Читать

Drupal 7, проверить авторизован ли пользователь

Ноябрь 13, 2017 г.

Если в коде необходимо проверить авторизовался ли текущий пользователь, то можно использовать как минимум два подхода. Глобальная переменная user GLOBALS['user'] в Drupal хранит объект текущего пользователя, расширенного информацией о ролях пользователя. ...

Читать
 

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

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



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