Como descobrir handle dos scripts no WordPress

Como descobrir handle dos scripts no WordPress

s vezes, voc programa tudo meticulosamente em um tema, mas vem um plugin e acaba inserindo algo que voc no quer ou j carregou em seu prprio cdigo.

E agora? Como fazer para impedir que outros arquivos deixem seu site mais lento no carregamento?

A reposta simples. Do mesmo jeito que voc pode incluir arquivos CSS e JS no WP usando wp_enqueue_scripts, voc pode remov-los. Veja um exemplo abaixo de carregamento condicional:

add_action( 'wp_enqueue_scripts', 'remove_scripts', 100 );
function remove_scripts() {
 if ( !is_single() ) {
 wp_dequeue_script( 'cwi_form_validate' );
 wp_dequeue_script( 'essb-mailform' );
wp_dequeue_style( 'easyrecipestyle-reset' );
 wp_dequeue_style( 'easyrecipebuttonUI' );
 wp_dequeue_style( 'easyrecipestyle' );

 }
 if (!is_page()){
 wp_dequeue_style( 'dlm-frontend' );
 }
}

No exemplo acima, precisava que alguns arquivos fossem chamados somente em pginas de post ou pginas comuns.

A sintaxe a seguinte:

wp_dequeue_style( '$handle' ); //para CSS
wp_dequeue_script( '$handle' ); //para JS

Removendo arquivos CSS

Onde, o $handle o slug do script. Para CSS fcil de achar, basta olhar no cdigo da sua pgina, na seo Head e procurar pela tag

rel='stylesheet' id='fw-font-awesome-css' href='http://cdn1.netmundo.com.br/wp-content/plugins/unyson/framework/static/libs/font-awesome/css/font-awesome.min.css' type='text/css' media='all' />

O nosso handle aqui o id, “fw-font-awesome”, sem o “-css”. Ento, para remover este arquivo do carregamento, usaramos:

wp_dequeue_style( 'fw-font-awesome' ); //para CSS

Removendo arquivos JS

Para remover os arquivos javascript/jQuery, um pouco mais chato, j que a tag gerada pelo WordPress no mostra o handle. Vamos ter que usar um cdigo no functions.php temporariamente para poder descobrir os IDs:

function wpa54064_inspect_scripts() {
    global $wp_scripts;
if (is_user_logged_in()):
    foreach( $wp_scripts->queue as $handle ) :
        echo $handle,'
'; endforeach; endif; } add_action( 'wp_print_scripts', 'wpa54064_inspect_scripts' );

Modifiquei a verso original, para mostrar os handles apenas para quem estiver logado.

screenshot-netmundo.com.br 2016-05-10 09-48-04

A imagem acima um exemplo do cdigo gerado. Assim, para remover o JS “customize-preview-nav-menus”:

wp_dequeue_script( 'customize-preview-nav-menus' ); //para JS

isso a!

Post Comment