Чтобы программно изменить/задать ЧПУ публикации (или другого объекта) в Drupal, нужно определить три параметра — системный адрес объекта, новый псевдоним и код языка.
К примеру, для объекта node код может быть следующим:
|
|
//получим данные публикации по ID $node = node_load($nid); //сформируем пакет данных, для псевдонима $path = array( 'source' => "node/{$node->nid}", 'alias' => 'new-alias-url', 'language' => $node->language); //удалим старый путь (если есть) path_delete(array('source' => "node/{$node->nid}", 'language' => $node->language)); //сохраним новое значение path_save($path); |
Если нужно решение для Drupal 6, то копайте в сторону функции path_set_alias().
Данная запись опубликована в 09.03.2017 18:34 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 17, 2025 г.
Иногда бывает потребность создать ссылку из кода. Структура ссылки довольно сложная на этапе препроцессинга шаблона меню, делюсь сниппетом кода.
Потребуются следующие зависимости:
[crayon-6a19e7a57e309491281802/]
Добавим ссылку в меню main. ...
Читать
Май 7, 2025 г.
Иногда модуль в Drupal требует наличия специфических сущностей или конфигураций, например — определённого текстового формата. Поскольку текстовые форматы являются конфигурационными сущностями (entities), напрямую указать их как зависимость в .info.yml ...
Читать
Апрель 22, 2017 г.
Views оказался настолько популярным модулем, что его даже включили в 8-ю версию Drupal. Он может формировать разделы сайта, блоки, быть источником списков и т.п. Но передача внешних параметров многообразием не отличается. Не хватает очень важного обработчика ...
Читать
Октябрь 28, 2014 г.
У меня эта ошибка всплыла для поля с автозаполнением, когда список значений генерировался из PHP кода. Занималась генерацией списка значений вот такая функция:
[crayon-6a19e7a57e7a8938772875/]
Грабли обнаружились в случаях, когда поле title содержал ...
Читать