Atualizado em outubro de 2026.
Como um relógio suíço, qualquer loja PrestaShop é composta por uma quantidade surpreendente de mecanismos e peças que garantem o seu bom funcionamento dia após dia. Entre elas estão os "hooks", os “ganchos” onde se ligam o conteúdo e a lógica dos módulos da sua loja. Este guia aplica-se ao PrestaShop 8 e 9.
O que são os hooks no PrestaShop?
Um hook é um ponto de ancoragem do PrestaShop ao qual um módulo associa o seu código para mostrar conteúdo ou reagir a um evento da loja, como apresentar uma oferta na página inicial ou agir quando um cliente cria a sua conta. Cada hook tem um nome, como ‘displayHome’, ‘displayFooter’, ‘actionProductAdd’ ou ‘actionCustomerAccountAdd’, e o prefixo indica o tipo (vemo-lo mais abaixo).
Para os ver na sua loja, entre no back office e abra Design > Posições. Encontrará a lista de hooks disponíveis e, sob cada um, os módulos associados pela ordem em que são executados. Cada módulo da lista está ligado ao hook que aparece mesmo acima do seu bloco. Se só lhe interessa um módulo, pode filtrá-lo no menu pendente superior ou procurar um hook concreto. E se quiser ampliar a sua loja com novas funcionalidades, tem a nossa coleção de módulos para PrestaShop.
Os hooks que pode usar dependem também do tema instalado, porque cada tema decide em que zonas apresenta cada hook.
Muitos hooks são blocos visíveis ao público, mas outros são invisíveis e servem apenas para executar ações. Por defeito, a página de Posições mostra apenas os hooks em que se pode posicionar um módulo; se marcar a caixa para mostrar os hooks não posicionáveis, aparecem todos, mesmo os invisíveis.
Se conhece o PrestaShop 1.6, talvez se lembre do botão “Live Edit” (edição em direto), que levava à loja para mover os módulos na hora. A captura da direita é dessa versão. Hoje trabalha-se em Design > Posições.
Tipos de hooks no PrestaShop e como funcionam
Há dois grandes grupos de hooks, de ação (action) e de visualização (display), que se distinguem pelo prefixo do nome.
- Hooks de ação (action): disparam quando ocorre um evento no PrestaShop e não apresentam nada no ecrã. Por exemplo, ‘actionCustomerAccountAdd’ dispara quando um cliente cria a conta com sucesso, ‘actionValidateOrder’ quando uma encomenda é validada e ‘actionProductAdd’ quando se cria um produto. Um módulo liga-se a eles para reagir, por exemplo avisando outro sistema ou guardando um dado.
- Hooks de visualização (display) geram conteúdo que se mostra no front office ou no back office: blocos, colunas, listas de produtos ou imagens. São os mais utilizados e aparecem em quase todos os cantos da loja, como ‘displayHome’ (página inicial), ‘displayFooter’ (rodapé), ‘displayShoppingCart’ (carrinho) ou ‘displayProductAdditionalInfo’ (informação adicional na ficha de produto). Dê uma vista de olhos à página de Posições da sua loja e verá quantos hooks visuais acumulou.
Como mudar um módulo de posição sem mexer no código?
Em Design > Posições pode subir ou descer um módulo dentro do seu hook com as setas ou arrastando a linha, e associá-lo a outro hook com a função de transplante (“Transplant a module”), sem escrever uma linha de código. Tenha em conta que alguns módulos só estão preparados para certos hooks e que, nalguns casos, é preciso alterar o código para os transplantar. Pode consultar o detalhe na documentação oficial do PrestaShop sobre posições (em inglês).
Como usa um módulo os hooks? (para programadores)
Um módulo liga-se a um hook chamando registerHook(), normalmente na instalação, e define um método público cujo nome é “hook” seguido do nome do hook. Esse método recebe um array com informação de contexto. Um exemplo com ‘displayHeader’:
public function install()
{
return parent::install()
&& $this->registerHook('displayHeader');
}
public function hookDisplayHeader(array $params)
{
// Aqui vai o código do seu módulo.
}
Tem a lista completa de hooks disponíveis na documentação para programadores do PrestaShop 9 (em inglês).
Ainda tem dúvidas?
Se precisar de ajuda com a estrutura de hooks da sua loja ou de um módulo à medida, a nossa equipa dá-lhe uma mão. Na Línea Gráfica somos especialistas em desenvolvimento PrestaShop: conte-nos o que precisa através do nosso serviço de suporte PrestaShop.