Rimuovi ?ver= da wp_register_script
Ricevo avvisi nei test di velocità di Google riguardanti le stringhe di query nei miei script. Sto provando a rimuoverle passando false come argomento per quel parametro. Tuttavia, sembra non avere effetto:
wp_register_script('myscript', get_bloginfo('template_directory').'/scripts.myversionnumber.js',false,false,true);
wp_enqueue_script('myscript');
PS: la parte "myversionnumber" nel nome del file js è il mio metodo per controllare cache/versioning invece dell'approccio ?ver= che apparentemente crea problemi ad alcuni server proxy (secondo il test Google pagespeed):
Rimuovi le stringhe di query dalle risorse statiche Abilitare la cache pubblica negli header HTTP per le risorse statiche permette al browser di scaricare le risorse da un server proxy vicino invece che da un server origin remoto. Scopri di più
Suggerimenti per questa pagina
Le risorse con un "?" nell'URL non vengono memorizzate nella cache da alcuni server proxy. Rimuovi la stringa di query e codifica i parametri nell'URL per le seguenti risorse:
Premessa
Ho risolto questo problema in modo molto diverso da SickHippie e chrisguitarguy e immagino non sia il modo in cui dovrebbe essere risolto, ma funziona davvero bene per me.
Il codice...
Ho inserito questo frammento di codice alla fine del file functions.php del mio tema:
function remove_cssjs_querystring( $src ) {
if( strpos( $src, '?rev=' ) ) // copia/incolla questa riga e la successiva per rimuovere ciò che vuoi dalla fine dei tuoi file css/js
$src = remove_query_arg( 'rev', $src );
if( strpos( $src, 'ver=' ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
add_filter( 'style_loader_src', 'remove_cssjs_querystring', 10, 2 );
add_filter( 'script_loader_src', 'remove_cssjs_querystring', 10, 2 );
Da dove è nata l'idea...
Stavo cercando su Google e ho trovato questo articolo, ma continuavo ad avere un problema con i css/js: a questo punto il mio codice aveva ancora (qua e là) alla fine qualcosa tipo .../some-stylesheet.css?rev=... e ho pensato di estendere un po' il frammento di codice per includere qualsiasi cosa potesse esserci dopo .css.