Как мне обновить узел (книгу или страницу) перед его сохранением, не касаясь кода модуля в Drupal?
Я хотел бы установить некоторые значения в узле, прежде чем записывать данные в БД. У меня уже есть работа с изменением book_nodeapi, но я хотел бы сделать это вне кода, была бы полезна некоторая опция _alter, которая позволяет мне оставить код модуля нетронутым.
Спасибо
2 ответа
Если я понимаю, что вам нужно, модуль " Правила " может быть очень полезен в таких задачах. Все, что вам нужно сделать, это создать условие в соответствии с типом содержимого, которое вы хотите, и выполнить действие, которое устанавливает значение. Установка значения может быть выполнена с использованием статических значений, значений токенов или даже кода PHP.
Вот скринкаст с основами правил.
Вы можете сделать собственный модуль и реализовать hook_nodeapi
(mymodule_nodeapi
) в нем так же, как модуль книги. Каждый активный модуль получает возможность подключиться к nodeapi для всех узлов.