Hook PrestaShop: cosa sono e come funzionano (8 e 9)

Qué son y cómo funcionan los hooks en Prestashop

Aggiornato a ottobre 2026.

Come un orologio svizzero, ogni negozio PrestaShop si compone di una quantità sorprendente di meccanismi e ingranaggi che ne garantiscono il funzionamento giorno dopo giorno. Tra questi ci sono gli "hook", i “ganci” a cui si collegano il contenuto e la logica dei moduli del suo negozio. Questa guida vale per PrestaShop 8 e 9.

Cosa sono gli hook in PrestaShop?

Un hook è un punto di aggancio di PrestaShop a cui un modulo collega il proprio codice per mostrare contenuti o reagire a un evento del negozio, come mostrare un’offerta in home page o agire quando un cliente crea il proprio account. Ogni hook ha un nome, come ‘displayHome’, ‘displayFooter’, ‘actionProductAdd’ o ‘actionCustomerAccountAdd’, e il prefisso indica il tipo (lo vediamo più avanti).

Per vederli nel suo negozio, acceda al back office e apra Design > Posizioni. Troverà l’elenco degli hook disponibili e, sotto ciascuno, i moduli associati nell’ordine in cui vengono eseguiti. Ogni modulo dell’elenco è agganciato all’hook che compare subito sopra il suo blocco. Se le interessa un solo modulo, può filtrarlo dal menu a tendina in alto o cercare un hook specifico. E se vuole ampliare il negozio con nuove funzioni, ecco la nostra collezione di moduli per PrestaShop.

Gli hook utilizzabili dipendono anche dal tema installato, perché ogni tema decide in quali zone mostrare ciascun hook.

Molti hook sono blocchi visibili al pubblico, altri sono invisibili e servono solo a eseguire azioni. Per impostazione predefinita, la pagina Posizioni mostra solo gli hook su cui si può posizionare un modulo; se spunta la casella per mostrare gli hook non posizionabili, compaiono tutti, anche quelli invisibili.

Pulsante Live Edit di PrestaShop 1.6 (schermata storica)Se conosce PrestaShop 1.6, forse ricorda il pulsante “Live Edit” (modifica dal vivo), che portava nel negozio per spostare i moduli al volo. L’immagine a destra è di quella versione. Oggi si lavora da Design > Posizioni.

Tipi di hook in PrestaShop e come funzionano

Esistono due grandi gruppi di hook, di azione (action) e di visualizzazione (display), che si riconoscono dal prefisso del nome.

  • Hook di azione (action): si attivano quando in PrestaShop accade un evento e non mostrano nulla a schermo. Ad esempio, ‘actionCustomerAccountAdd’ scatta quando un cliente crea il proprio account con successo, ‘actionValidateOrder’ quando un ordine viene convalidato e ‘actionProductAdd’ quando si crea un prodotto. Un modulo si aggancia a questi hook per reagire, ad esempio avvisando un altro sistema o salvando un dato.
  • Hook di visualizzazione (display) generano contenuti mostrati nel front office o nel back office: blocchi, colonne, elenchi di prodotti o immagini. Sono i più utilizzati e compaiono in quasi ogni angolo del negozio, come ‘displayHome’ (home page), ‘displayFooter’ (piè di pagina), ‘displayShoppingCart’ (carrello) o ‘displayProductAdditionalInfo’ (informazioni aggiuntive nella scheda prodotto). Dia un’occhiata alla pagina Posizioni del suo negozio e vedrà quanti hook visivi si sono accumulati.

Come cambiare la posizione di un modulo senza toccare il codice?

Da Design > Posizioni può spostare un modulo in alto o in basso all’interno del suo hook, con le frecce o trascinando la riga, e associarlo a un altro hook con la funzione di trapianto (“Transplant a module”), senza scrivere una riga di codice. Tenga presente che alcuni moduli sono pensati solo per determinati hook e che in certi casi bisogna modificarne il codice per trapiantarli. Può consultare i dettagli nella documentazione ufficiale di PrestaShop sulle posizioni (in inglese).

Come usa gli hook un modulo? (per sviluppatori)

Un modulo si aggancia a un hook chiamando registerHook(), di solito durante l’installazione, e definisce un metodo pubblico il cui nome è “hook” seguito dal nome dell’hook. Il metodo riceve un array con informazioni di contesto. Un esempio con ‘displayHeader’:

public function install()
{
    return parent::install()
        && $this->registerHook('displayHeader');
}

public function hookDisplayHeader(array $params)
{
    // Qui va il codice del suo modulo.
}

L’elenco completo degli hook disponibili è nella documentazione per sviluppatori di PrestaShop 9 (in inglese).

Ha ancora dubbi?

Se ha bisogno di aiuto con la struttura degli hook del suo negozio o di un modulo su misura, il nostro team è a sua disposizione. In Línea Gráfica siamo esperti di sviluppo PrestaShop: ci racconti di cosa ha bisogno tramite il nostro servizio di assistenza PrestaShop.

Álvaro Criado
Aggiornato il