I observed the inside the wp_head
function in the source links of every .css
, .js
files a ?ver=1
(or other number based on the file's/library version) is added. How can I overwrite them, to remove them?
This issue I think is causing problems on the cache manifest part.
I observed the inside the wp_head
function in the source links of every .css
, .js
files a ?ver=1
(or other number based on the file's/library version) is added. How can I overwrite them, to remove them?
This issue I think is causing problems on the cache manifest part.
Share Improve this question edited Feb 9, 2019 at 0:01 fuxia♦ 107k39 gold badges255 silver badges461 bronze badges asked Apr 18, 2013 at 15:07 user17408user174082 Answers
Reset to default 15You can hook into style_loader_src
and script_loader_src
and run remove_query_arg( 'ver', $url )
on the URL:
<?php
/* Plugin Name: Remove version parameter for scripts and styles */
add_filter( 'style_loader_src', 't5_remove_version' );
add_filter( 'script_loader_src', 't5_remove_version' );
function t5_remove_version( $url )
{
return remove_query_arg( 'ver', $url );
}
Without this plugin:
After plugin activation:
There is one case where that will fail: When someone didn’t use the script/style API, but added a hard coded string to the header.
This worked for me when I still had to load a stylesheet from Google Fonts.
<?php
add_filter( 'script_loader_src', 'wpse130419_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', 'wpse130419_remove_script_version', 15, 1 );
function wpse130419_remove_script_version( $src ) {
$url = explode( '?', $src );
if ( $url[0] === 'http://fonts.googleapis/css' ) :
$version = explode( '&ver=', $url[1] );
$url[1] = $version[0];
endif;
return ( $url[0] === 'http://fonts.googleapis/css' )
? "{$url[0]}?{$url[1]}"
: $url[0]
;
}