Hooks

En esta página

Los hooks permiten que los plugins ejecuten código en respuesta a eventos. Todos los hooks reciben un objeto evento y el contexto del plugin.

Firma del hook

async (event, ctx) => ReturnType;

Configuración del hook

OpciónTipoDefaultDescripción
prioritynumber100Orden de ejecución. Números menores primero.
timeoutnumber5000Tiempo máximo de ejecución en milisegundos.
dependenciesstring[][]IDs de plugins que deben ejecutarse antes.
errorPolicy"abort" | "continue""abort"Si detener la pipeline en caso de error.

Hooks de ciclo de vida

plugin:install, plugin:activate, plugin:deactivate, plugin:uninstall

Hooks de contenido

content:beforeSave

Se ejecuta antes de guardar contenido. Retorna contenido modificado, un resultado de error del sandbox, o void.

content:afterSave

Se ejecuta después de guardar exitosamente.

content:beforeDelete / content:afterDelete

content:afterPublish / content:afterUnpublish / content:afterRestore / content:afterSchedule / content:afterUnschedule

Hooks de medios

media:beforeUpload / media:afterUpload

Hooks de páginas públicas

page:metadata

Contribuye metadatos estructurados a <head>. Disponible para plugins sandboxed y nativos.

page:fragments

Contribuye HTML, scripts o hojas de estilo. Solo plugins nativos.

Orden de ejecución

  1. Menor priority primero.
  2. A igual prioridad, orden de registro.
  3. Hooks con dependencies esperan a esos plugins.

Referencia de hooks

HookDisparadorRetornoExclusivo
plugin:installPrimera instalaciónvoidNo
content:beforeSaveAntes de guardarContenido modificado o voidNo
content:afterSaveDespués de guardarvoidNo
content:beforeDeleteAntes de eliminarfalse para cancelarNo
page:metadataRenderizado de páginaContribuciones o nullNo
page:fragmentsRenderizado (solo nativo)Contribuciones o nullNo

Ver la Referencia de Hooks para tipos completos.