¿Cómo puedo crear mi propio gancho (similar a los que crea Drupal core) para que lo utilicen otros módulos de Drupal?
¿Cómo puedo crear mi propio gancho (similar a los que crea Drupal core) para que lo utilicen otros módulos de Drupal?
Respuestas:
En realidad no creas ganchos. Utiliza funciones auxiliares como module_invoke_all()
, module_invoke()
o drupal_alter()
para invocar todas las funciones que coinciden con el patrón de nombre esperado. Las funciones invocadas generalmente se encuentran con module_implements()
.
Incluso si no es necesario que los ganchos funcionen, la mejor práctica es documentarlos MODULE.api.php
creando funciones de apéndices vacíos hook_NAME
con comentarios de documentación .
También puedes crear hook, usando hook_trigger_info puedes crear un nuevo hook, y en tu módulo necesitas implementarlo. Como ejemplo, suponga que desea crear un archivo de nodos y colocar nodos antiguos en él. También desea activar un enlace cuando finalice la operación de archivo. va a ser algo como esto
function hook_trigger_info() {
return array(
'node' => array(
'archive_nodes' => array(
'label' => t('Archive old nodes'),
)
)
);
}
Después de definir el enlace, su módulo es responsable de implementar el enlace y las acciones usando module_invoke () o module_invoke_all () .
Puede habilitar el trigger
módulo para ver este nuevo enlace en la pestaña del nodo.