Ho trovato diversi post con questa stessa domanda, ma le risposte divergono sempre su qualche altro argomento o non funzionano per le mie esigenze.
Dopo aver salvato un nodo, voglio che il mio modulo personalizzato inserisca una riga in una delle mie tabelle personalizzate che contenga il nid del nuovo nodo. Quando hook_node_submit
viene chiamato, il nid non esiste ancora. hook_node_insert
ha il nid, ma viene chiamato solo la prima volta che il nodo viene salvato, ma potenzialmente ho bisogno di agire ogni volta che il nodo viene salvato.
Il mio piano è quello di separare la mia funzionalità nel suo metodo e implementare entrambi gli hook, ma sto cercando di imparare a fare le cose correttamente con Drupal e quindi mi chiedo se esiste un hook che si adatti effettivamente alle mie esigenze.
Esiste un hook che viene chiamato ogni volta che un nodo viene salvato e chiamato DOPO che il salvataggio è completo?
hook_node_submit
ma no hook_node_update
?
hook_node_insert
e in hook_node_update
.
hook_node_insert()
e hook_node_update()
sono i ganci corretti per questo, hook_node_submit()
viene chiamato durante il processo di invio del modulo prima che il nodo venga salvato. Non dimenticare che devi cancellare le cache ogni volta che aggiungi / rimuovi un hook
hook_node_insert
ehook_node_update
(agisce ogni volta che un nodo viene salvato).