Back-End

16 set, 2016

Hook dinâmico para o footer no WordPress 4.6

Publicidade

O hook dinâmico no WordPress nos permite controlar uma ação mais específica para o hook que estamos utilizando.

No WordPress 4.6, tivemos uma sutil implementação que tornou o hook ‘admin_print_footer_scripts‘ dinâmico. Com isso, ao invocar tal hook, você poderá passar um sufixo para ele. Exemplo: ‘admin_print_footer_scripts-alguma_pagina‘.

Qual a necessidade do hook dinâmico?

A implementação foi realizada, pois o único hook dinâmico disparado no footer era o ‘admin_footer‘, que acontecia depois do ‘admin_print_footer_scripts’. Então, se você quisesse inserir um script para uma página em específico, você precisava colocar em outro hook dinâmico, ou utilizar o próprio ‘admin_print_footer_scripts‘, mas ainda verificando dentro do seu método, se o$hook_suffix era realmente o da página que você precisava.

Com essa mudança, o código para tal ação ficou simplificado, como podemos ver abaixo:

<?php
add_action( 'admin_print_footer_scripts', function() {
	global $hook_suffix;
	
	if ( 'some_admin_page' !== $hook_suffix )
		return;
		
	// Qualquer coisa que se queira fazer...
} );

E agora, pode ser feito apenas com:

<?php
add_action( 'admin_print_footer_scripts-some_admin_page', function() {
	// Qualquer coisa que se queira fazer...
} );

Conclusão

Essa pequena implementação nos permite agora inserir scripts em páginas específicas no admin, e nos poupa algumas linhas de código, visto que agora não precisaremos fazer uma verificação no $hook_sufix, como era feito antes.