WordPress中使用wp_enqueue_script()和wp_enqueue_style()引入js脚本和css样式表时,会生成一个版本号,如果你不亲自指定,版本号会是WordPress的版本号,比如3.4.2。版本号有好处,可以强制浏览器更新脚本,但有些SEO检测工具会认为带有版本号是非静态化的表现,那么这里有一个去除版本号的方法。

在主题的functions.php中加入如下代码,就可以去除版本号

function sb_remove_script_version( $src ){
	$parts = explode( '?', $src );
	return $parts[0];
}
add_filter( 'script_loader_src', 'sb_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', 'sb_remove_script_version', 15, 1 );

要注意的是,只有通过WordPress的方式引入脚本才会产生版本号,如果自己硬编码进去,这段代码是不起作用的,当然,不推荐硬编码js文件。

一点小提示,当你需要用到W3 Total Cache插件时,最好用wp_enqueue_script()引入脚本,可以使用自动Minify的功能直接将所有脚本合并成一个文件,并且不要将WordPress默认的jquery替换成google的或者其它的外部jquery,否则当开启W3 Total Cache的自动Minify功能时,可能导致脚本运行错误。

2条留言

评论功能已关闭