Os ganchos de WordPress ou hooks WordPress, como são mais conhecidos, fazem parte da API do WordPress (e WooCommerce, já que este tem seus próprios hooks). Eles servem para que desenvolvedores, como eu e você, possam inserir uma customização no sistema, alterando seu funcionamento inicial. Explicarei mais sobre hooks em um outro post.
Abaixo, encontrará uma lista de hooks WordPress em ordem de aparecimento ou carregamento.
Lista de Hooks WordPress
Lista de ganchos WordPress
Pela internet, você encontra vários sites com a lista de hooks WordPress, mas é sempre em ordem alfabética, o que não ajuda muito um novo programador WordPress a entender por que seu código não funciona. As funções devem ser chamadas no momento certo para algo funcionar. O tópico abaixo fala justamente disso e dá um exemplo.
E mais abaixo, caso queira ir diretamente a ela, eu coloquei a lista de hooks WordPress em ordem de aparecimento, para facilitar saber quando é muito cedo ou muito tarde para o que a sua função fará.
Ordem de Aparecimento
Que diferença faz quando chamo minha função?
Respondendo à pergunta acima, toda!
Se uma função não for chamada no momento certo, ela provavelmente não terá nenhum efeito e nada de diferente aparecerá no frontend. Mas no pior das hipóteses, ela pode quebrar o seu site (por isso, sempre verifique como está o site após cada alteração). Veja um exemplo:
Se você quer alterar algo produzido pelo CSS do tema, não adianta hookar (enganchar) sua função no gancho ‘plugins_loaded’. Você teria que utilizar o hook ‘after_setup_theme’.
Aviso que esta não é a forma correta de alterar CSS. Foi apenas para ilustrar o cenário, de modo que iniciantes possam entender a importância de chamar a função no momento certo.
Lista de Hooks WordPress em Ordem de Aparecimento
Sem mais delongas...
É lista que você quer? Toma!
muplugins_loaded | Dispara quando todos os plugins de uso obrigatório (must use) forem carregados. |
registered_taxonomy | Dispara depois que as taxonomias personalizadas são registradas (pós categorias / tags). |
registered_post_type | Dispara após o registro de um tipo de postagem. |
plugins_loaded | Dispara quando plugins ativados são carregados. |
sanitize_comment_cookies | Dispara quando os cookies de comentário são higienizados. |
setup_theme | Dispara antes que o tema seja carregado. |
unload_textdomain | Dispara antes do domínio de texto seja descarregado. Basicamente, “Existe um domínio de texto que podemos usar para traduções?” |
load_textdomain | Dispara antes do arquivo de tradução do MO ser carregado. Basicamente, “olha, nós temos um domínio de texto e vamos pegar as traduções do arquivo .mo agora!” |
after_setup_theme | Dispara depois que o tema é carregado. |
auth_cookie_malformed | Dispara se um cookie de autenticação estiver malformado. |
auth_cookie_valid | Dispara quando um cookie de autenticação é validado. |
set_current_user | Dispara após o usuário atual ser definido. |
init | Dispara após o término do carregamento do WordPress, mas antes que qualquer cabeçalho seja enviado. A maior parte do WP é carregada nesse estágio e o usuário é autenticado. O WP continua a carregar no hook init que segue (por exemplo, widgets), e muitos plugins se instanciam nele por todos os tipos de razões (por exemplo, eles precisam de um usuário, uma taxonomia, etc.). Se você deseja conectar uma ação quando o WP for carregado, use o gancho wp_loaded abaixo. |
widgets_init | Dispara após todos os widgets padrão do WordPress terem sido registrados. |
register_sidebar | Dispara quando uma barra lateral é registrada. |
wp_register_sidebar_widget | Dispara uma vez para cada widget registrado. |
wp_loaded | Este gancho é acionado assim que o WP, todos os plugins e o tema foram totalmente carregados e instanciados. Use este gancho se você precisar interceptar ações depois que o WP tiver carregado e tiver acesso a taxonomias / tipos de postagem / usuário etc. |
parse_request | Dispara uma vez que todas as variáveis de consulta para a solicitação atual foram analisadas. |
send_headers | Dispara quando os cabeçalhos HTTP solicitados para armazenamento em cache, tipo de conteúdo, etc. forem enviados. |
parse_tax_query | Os acionamentos após as pesquisas de consulta relacionadas à taxonomia foram analisadas. |
parse_query | Dispara após a consulta da vars principal. |
pre_get_posts | Dispara após a criação do objeto da variável de consulta, mas antes da execução da consulta real. |
posts_selection | Dispara para anunciar os parâmetros de seleção atuais da consulta. Para uso por plugins de cache. |
template_redirect | Dispara antes de determinar qual modelo carregar. |
wp_default_scripts | Dispara quando a instância WP_Scripts é inicializada. |
wp_default_styles | Dispara quando a instância WP_Styles é inicializada. |
admin_bar_init | Dispara após a inicialização de WP_Admin_Bar. |
add_admin_bar_menus | Os Dispara após os menus são adicionados à barra de menus. |
get_header | Dispara antes que o arquivo de modelo de cabeçalho seja carregado. |
wp_head | Dispara a ação wp_head para adicionar texto ao cabeçalho. |
wp_enqueue_scripts | Dispara quando scripts e estilos são enfileirados. |
wp_print_styles | Exibe estilos que estão na fila $ handles. |
wp_print_scripts | Os Dispara antes dos scripts na fila $ handles são impressos. |
get_sidebar | Dispara antes que o arquivo de modelo da barra lateral seja carregado. |
dynamic_sidebar_before | Dispara antes dos widgets serem renderizados em uma barra lateral dinâmica. |
dynamic_sidebar | Dispara antes que o retorno de chamada de exibição de um widget seja chamado. |
pre_get_search_form | Dispara antes que o formulário de pesquisa seja recuperado, no início de get_search_form (). |
loop_start | Dispara quando o loop é iniciado. |
the_post | Dispara quando os dados do post tiverem sido configurados. |
loop_end | Dispara quando o loop terminar. |
pre_get_comments | Dispara antes que os comentários sejam recuperados. |
wp_meta | Dispara antes de exibir o conteúdo ecoado na barra lateral. |
dynamic_sidebar_after | Dispara depois que os widgets são renderizados em uma barra lateral dinâmica. |
add_option | Dispara antes que uma opção seja adicionada. |
added_option | Dispara após uma opção ter sido adicionada. |
setted_transient | Dispara após o valor de um transiente ter sido definido. |
wp_footer | Imprime scripts ou dados antes da tag do corpo de fechamento no front end. |
wp_print_footer_scripts | É acionado quando scripts de rodapé são impressos. |
admin_bar_menu | Carregue todos os itens necessários da barra de administração. Este é o gancho usado para adicionar, remover ou manipular itens da barra de administração. |
wp_before_admin_bar_render | Dispara antes que a barra de administração seja renderizada. |
wp_after_admin_bar_render | Dispara depois que a barra de administração é renderizada. |
Conclusão
A lista de hooks WordPress em ordem de aparecimento ajuda programadores a entenderem quando devem enganchar suas funções.
Favorite esta página para voltar sempre que precisar e se tiver alguma dúvida, é só perguntar aí embaixo.
Rafa Carvalhido
Especialista WordPress
Perfil: https://profissionalwp.dev.br/blog/contato/rafa-carvalhido/
seja o primeiro a comentar