O carregador de script / estilo WP pode ser usado para concatenar e gzip scripts e estilos no front-end?

26

WP tem um bom carregador de javascript incluído no wp-admin: enlace

e um carregador CSS: enlace

Eu queria saber se é possível usá-los no front-end também, não apenas admin, porque eles podem concatenar todos os scripts enfileirados e servi-los como um único arquivo compactado com gzp

    
por Alex 26.01.2011 / 08:45

4 respostas

12

resposta tardia

De uma breve olhada:

Você teria que usar

  • include( admin_url().'load-scripts.php' );
  • e include( admin_url().'script-loader.php' );

Em seguida, salte para $GLOBALS['wp_scripts'] :

Use…

$wp_scripts->default_dirs( array_merge( 
     $wp_scripts->default_dirs
    ,array( '/themes/your_theme/js/' ) 
); 

... para estendê-lo.

E, em seguida, use

$wp_scripts->add( $handle, $path_from_content_dir, false/array( $deps ), $ver ) 

para adicionar um script.

Notas:

  1. Scripts não compactados são pesquisados por .dev.js (quando SCRIPT_DEBUG é TRUE ).
  2. O mesmo parece ser possível para $wp_styles .
  3. EDIT: WP 3.5 alterará esse comportamento e usará .js para versões "dev" e ".min.js" quando ( SCRIPT_DEBUG for TRUE );

(Mas eu acho que isso só funcionará se você usar um plugin ou um plug-in mu).

Não foi testado e não tenho certeza se isso funcionará.

    
por kaiser 24.04.2012 / 15:30
6

Essa é uma pergunta muito boa e seria um ótimo recurso para o WordPress incluir.

Algumas das outras respostas não abordam a questão principal.

  

Eu queria saber se é possível   usá-los no front-end também, não   apenas admin, porque eles podem   concatenar todos os scripts enfileirados e   sirva-os como um único arquivo gzipado.

Não, no momento, não é possível usar o carregador de scripts interno para Concatenar CSS e scripts para o front end.

Havia um discussão sobre isso em WP Hackers há alguns anos e há um ticket trac para esse aprimoramento que foi aceito, mas para um lançamento futuro.

    
por Chris_O 29.03.2011 / 09:25
3

Se você precisar enfileirar um arquivo CSS no front end:

1) Registre o estilo via wp_register_style ($ handle, $ src) 2) Conecte wp_enqueue_style ($ handle) no gancho wp_print_styles.

Se você precisar enfileirar um script no front end:

1) Registre o estilo via wp_register_script ($ handle, $ src) 2) Anexe o wp_enqueue_script ($ handle) no gancho wp_head.

(Nota: eu teria esperado o gancho wp_print_styles para isso, mas este hook aparentemente não funciona como esperado.)

    
por Chip Bennett 28.03.2011 / 21:49
0

Eu tenho alguns scripts que você pode querer ver.

1. Combine.php  - Em vários dos meus temas, eu implementei este script . Suporta funcionalidades semelhantes e pode ser largado na sua pasta de modelos e trabalhado com relativa facilidade.

2. WP Minify  - Este plugin suporta a redução e é muito fácil de trabalhar.

3. W3 Total Cache  - é um plugin de desempenho muito poderoso. Ele também suporta a combinação script / css, bem como um grande número de outros recursos, por exemplo. off carregando os scripts combinados para um CDN.

    
por Scott 19.02.2011 / 15:44