Pregunta:
Si un módulo proporciona un vocabulario de taxonomía, ¿qué debería suceder en hook_install
, hook_enable
, hook_uninstall
y hook_disable
?
Mi principal preocupación es cómo hook_uninstall
debería diferir de hook_disable
. ¿Deberíamos simplemente taxonomy_vocabulary_delete()
en ambos ganchos? ¿Deberían los nodos existentes que se refieren a los términos simplemente perder las referencias al deshabilitar y desinstalar el módulo?
Respuesta:
Hay al menos un módulo principal que crea un vocabulario que podemos usar como guía: Foro .
Crea el vocabulario "Foros" en hook_enable()
(ver función form_enable()
).
No elimina el vocabulario en hook_disable()
o hook_uninstall()
. (ver función forum_uninstall()
– El foro no tiene una función hook_disable()
.
Entonces, para responder a su pregunta, cree el vocabulario en hook_enable()
y no lo elimine.
Otra nota forum.install
archivo forum.install
que probablemente sea relevante para su módulo es que debe asegurarse de que su módulo se cargue después del módulo de taxonomía. Puede hacerlo configurando el peso del módulo en 1
.