¿Qué son los hooks en Drupal y cuales son los más usados?

Author Top
estebanvalerioh

Si estamos iniciando con Drupal, probablemente escuchemos mucho la palabra hooks, pero:

1. ¿Qué son los hooks en Drupal?

Son funciones PHP que utilizamos en nuestros módulos, el nombre de las mismas se compone de la siguiente forma:

function hook_name() {
}
hook => nombre del módulo
name => nombre del hook

2. ¿Para qué sirven los hooks en drupal?

Aumentan la funcionalidad de Drupal permitiendo a los módulos interactuar con el core.  De esta manera podemos alterar los comportamientos default de Drupal, y agregar nueva funcionalidad, si esos son los requerimientos para nuestro sitio.

Veremos a continuación, una descripción de los hooks más comunes utlizados en nuestros sitios:

- hook_boot( )

  • La función hook_boot() se ejecuta en el booteo de drupal
  • Afecta las páginas cacheadas
  • Se ejecuta antes de que los módulos y archivos de Drupal se carguen a memoria.
  • No se usa mucho en módulos personalizados.

- hook_init( )

  • La función hook_init() es un hook de iniciación
  • No afecta a las paginas cacheadas
  • Se ejecuta cuando los módulos y archivos están cargados a memoria, por lo tanto, podemos hacer uso de todas las funciones que vienen en los módulos instalados.

- hook_ form_alter( )

  • Nos permite alterar los formularios que se usan en Drupal
  • Permite agregar y remover elementos al formulario
  • Permite agregar y remover funciones de validación
  • Permite agregar y remover funciones del submit del form

- hook_theme( )

  • Nos permite crear funciones de tematización que podemos usar en nuestro sitio.
  • Podemos pasarle variables, las cuales utilizamos para crear HTML y presentarlo en una página.

- hook_node_[acción]( )

El token [acción] será cambiado por una acción específica.  Ejemplo: hook_node_save().

  • Son una serie de funciones que nos permite interactuar con las acciones que se le aplican a los nodos, como save, presave, update, etc.

- hook_user_[acción]( )

El token [acción] será cambiado por una acción específica.  Ejemplo: hook_user_save().

  • Son una serie de funciones que nos permite interactuar con las acciones que se le aplican a los usuarios de Drupal, como save, presave, update, etc.

- hook_block_[acción]( )

El token [acción] será cambiado por una acción específica.  Ejemplo: hook_node_info().

  • Son funciones que nos permiten crear nuevos bloques para utilizar en nuestro sitio, existen las funciones hook_node_info() y hook_node_view().

Espero les haya sido de utilidad!

Saludos!

bursa esc
bursa eskort
bursa escort bayan bursa travesti escort bursa merkez escort bursaescort bursa escort bayanlar alanya eskort bayan antalya bayan eskort havalimanı transfer