我想在wordpress中删除查询字符串,我已经写过了:
function _remove_script_version( $src ){
$parts = explode( '?', $src );
return $parts[0];
}
add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );
但我需要忽略一个查询字符串:
http://maps.googleapis.com/maps/api/js
我该怎么写?
答案 0 :(得分:0)
例如,如果您不想删除此网址3.4.1
中包含的版本http://maps.googleapis.com/maps/api/js?sensor=false&v=3&language=en%C2%AEion=US&ver=3.4.1
function _remove_script_version($src) {
preg_match(
"#^(https?)://([.0-9a-zA-Z-]+)(/?.*?)([^/]*)$#",
$src,
$queryStringPartsArray
);
$endOfUrlArray = explode('?', $queryStringPartsArray[4]);
$paramsArray = explode('&', $endOfUrlArray[1]);
foreach($paramsArray as $param) {
$parts = explode('=', $param);
if(($parts[1] == "ver") && !preg_match("/3.4.1/", $parts[1])) {
return $queryStringPartsArray[1]."://".
$queryStringPartsArray[2].
$queryStringPartsArray[3].
$endOfUrlArray[0];
}
}
}