Как автоматически установить псевдоним URL-адреса для типа контента БЕЗ использования Pathauto? Какой крючок реализовать?


Pathauto может легко выполнить эту работу для всех типов контента, но в моем случае у меня есть только один URL-адрес типа контента, который необходимо настроить, и я бы предпочел не устанавливать Pathauto и токен.

Может ли кто-нибудь посоветовать мне, как это сделать?

Author: kiamlaluno, 2011-03-20

2 answers

/**
 * Implements hook_node_insert()
 */
 function mymodule_node_insert($node) {
   if ($node->type == 'mytype') {
     $node->path['alias'] = 'mytype/' . $node->nid;
   }
 }

Кроме того, вы можете добавить этот код в hook_node_update()

 12
Author: ya.teck, 2016-11-16 13:56:57

См. стр.149 Разработки Pro Drupal, используйте функцию hook_insert(). При сохранении нового узла вызывается функция hook_insert(). Это место для обработки любой пользовательской обработки содержимого узла перед сохранением узла. Также посмотрите на стр.152-156 Про разработку Drupal, в которой рассказывается обо всех различных функциях hook_node_xxxx().

Я думаю, что использование hook_node_insert(), как было предложено в предыдущем ответе, приведет к подключению к ВСЕМ созданиям узлов, которые не будут касаться вашего необходимо изменить определенный тип контента.

 1
Author: DeeZone, 2011-03-20 12:45:00