JavaScriptやCSSに付加されるWordPressのバージョン番号を除去する
WordPressでは、出力するJavaScriptやCSSに?ver=X.X
のようなバージョン番号が付加されます。
(例)
1 2 3 4 |
<!-- JavaScriptの場合 --> <script type='text/javascript' src='http://example.com/wp-includes/js/script.js?ver=X.X.X'></script> <!-- CSSの場合 --> <link rel='stylesheet' id='style-css' href='http://example.com/wp-content/themes/xxx/style.css?ver=X.X.X' type='text/css' media='all' /> |
「「wp_enqueue_script()
」「wp_enqueue_style()
」という関数からバージョン指定なしでJavaScriptやCSSが登録された場合、WordPressのバージョン番号が付加される」という仕組みになっているのですが、WordPressのバージョンを出したくない場合は下記のいずれかで除去できます。
WordPressのバージョン番号のみ除去する
WordPressのバージョン番号のみ削除したい場合は、functions.phpに下記のように記載します。
1 2 3 4 5 6 7 8 |
/** * JavaScriptやCSSに付加されるWordPressのバージョン番号(?ver=4.4.2など)を削除します。 */ function remove_src_wp_ver( $dep ) { $dep->default_version = ''; } add_action( 'wp_default_scripts', 'remove_src_wp_ver' ); add_action( 'wp_default_styles', 'remove_src_wp_ver' ); |
※バージョン番号が指定されなかった場合に使われる部分を空にすることで ?ver=
部分を除去するものです。自分の好きな値に変えることもできます。
すべてのバージョン番号を除去する
WordPressのバージョン以外も含めたすべてのバージョン番号を除去したい場合は、上記の代わりにfunctions.phpに下記のように記載します。
1 2 3 4 5 6 7 8 |
/** * JavaScriptやCSSに付加されるバージョン番号をすべて削除します。 */ function remove_src_ver( $src ) { return remove_query_arg( 'ver', $src ); } add_filter( 'script_loader_src', 'remove_src_ver' ); add_filter( 'style_loader_src', 'remove_src_ver' ); |
※ タグの出力の直前に?ver=
の部分を削除するものです。この場合、「jquery.js?ver=1.11.3
」などのWordPressのバージョン番号ではない部分も含めてすべて除去されます。
すべてのバージョン番号を除去する (管理者以外)
「管理者の場合のみバージョン番号を残したい」という場合は上記の代わりにfunctions.phpに下記のように記載します。
1 2 3 4 5 6 7 8 9 10 11 |
/** * JavaScriptやCSSに付加されるバージョン番号をすべて削除します。(管理者以外) */ function remove_src_ver_except_admin( $src ) { if ( ! current_user_can( 'administrator' ) ) { $src = remove_query_arg( 'ver', $src ); } return $src; } add_filter( 'script_loader_src', 'remove_src_ver_except_admin' ); add_filter( 'style_loader_src', 'remove_src_ver_except_admin' ); |
※ プラグインの「Acunetix WP Security」(紹介記事: 「Acunetix WP Security - セキュリテイ対策と脆弱性スキャンができるWordPressプラグイン - ネタワン」) の「Remove the version parameter from urls」オプションでもこれと同等のことが行われます。
更新履歴
- 2016/04/26 誤記訂正 (「管理者以外は残したい」→「管理者の場合のみバージョン番号を残したい」
- 2016/02/13 初版