O que são Hooks do WordPress?
Os hooks do WordPress são uma parte essencial da estrutura de desenvolvimento do WordPress, permitindo que os programadores interajam com a funcionalidade central do WordPress sem modificar os ficheiros centrais. Ao utilizar hooks, é possível adicionar ou modificar funcionalidades em temas e plugins. Existem dois tipos principais de hooks: Action Hooks e Filter Hooks. Aqui está um resumo do que eles são e como usá-los
O que são Hooks do WordPress?
Hooks são pontos predefinidos no WordPress que permitem que você “enganche” nas funções do WordPress e execute um código personalizado. Isso permite que você modifique ou estenda a funcionalidade do núcleo, temas e plugins do WordPress sem editar diretamente os arquivos originais. Existem dois tipos principais de hooks
- Action Hooks: Permitem adicionar ou executar código personalizado em pontos específicos durante a execução do WordPress (por exemplo, quando um post é publicado ou quando uma página é carregada).
- Hooks de filtro: Permitem modificar ou manipular dados antes de serem enviados para o navegador ou salvos no banco de dados (por exemplo, modificando o conteúdo ou alterando a saída).
1. Ganchos de ação
Os ganchos de ação são acionados em vários pontos durante o funcionamento do WordPress. Eles permitem adicionar funcionalidades em estágios específicos do processo de carregamento do WordPress ou quando certos eventos ocorrem (como publicar um post ou exibir o rodapé)
Como usar ganchos de ação:
Para utilizar um gancho de ação, utilize a função add_action() no ficheiro functions.php do seu tema ou num plugin personalizado. Esta função liga a sua função personalizada a um gancho específico
Sintaxe:
Exemplo:
Digamos que quer adicionar conteúdo personalizado no final de cada publicação
Neste exemplo, the_content é o gancho que aciona a função para anexar conteúdo personalizado no final de cada post
2. Ganchos de filtro
Os hooks de filtro permitem modificar a saída dos dados antes que eles sejam renderizados na tela ou salvos no banco de dados. Os filtros recebem dados, modificam-nos e devolvem-nos
Como usar os hooks de filtro:
Para usar um hook de filtro, você usa a função add_filter(), que aplica uma função personalizada para modificar um conteúdo específico
Sintaxe:
Exemplo:
Digamos que quer alterar o título de cada publicação para que seja em letras maiúsculas
Neste exemplo, the_title é o gancho que filtra os títulos dos posts, e a função uppercase_post_title() converte todos os títulos para maiúsculas
Hooks populares do WordPress
Aqui estão alguns hooks comumente usados no WordPress
Hooks de ação:
- wp_enqueue_scripts: Use isso para adicionar ou remover scripts e estilos.
- init: É executado após o WordPress ter terminado de carregar, mas antes de qualquer cabeçalho ser enviado.
- wp_footer: Executa o código logo antes do fechamento da tag </body> no seu tema.
- publish_post: Acionado quando um post é publicado.
Ganchos de filtro:
- the_content: Permite filtrar o conteúdo do post antes que ele seja exibido.
- the_title: Permite-lhe modificar os títulos dos posts.
- excerpt_length: Modifica o comprimento dos excertos dos posts.
- wp_nav_menu_items: Filtra a saída dos itens do menu de navegação.
Melhores práticas para o uso de Hooks
- Evite editar arquivos principais: Utilize sempre hooks em temas personalizados ou plugins para manter a compatibilidade com futuras actualizações.
- Nomes exclusivos de funções: Utilize sempre nomes únicos para as suas funções personalizadas para evitar conflitos com outros plugins ou temas.
- Use lógica condicional: Ao usar hooks, use verificações condicionais como is_single() ou is_admin() para garantir que seu código seja executado somente quando necessário.
Conclusão
os hooks do ordPress são uma forma de adicionar ou modificar funcionalidades sem alterar os ficheiros principais. Existem dois tipos principais:
Hooks de ação – permitem-lhe executar código personalizado em pontos específicos do WordPress.
Hooks de filtro – permitem modificar dados antes de serem exibidos ou salvos.
Exemplo – Action Hook: Adicionar uma mensagem ao rodapé:
Este código adiciona a mensagem no rodapé de cada página sem tocar nos ficheiros principais do WordPress.