ワードプレスのバージョン情報を隠す – WordPress
headのメタタグ
デフォルトの状態ではヘッドのmetaタグにワードプレスのバージョン情報が出力されていますので、出力しないようにします。
1 |
<meta name="generator" content="WordPress 5.0.3" /> |
テーマのfunctions.phpにremove_action関数を追加します。
1 |
remove_action('wp_head', 'wp_generator'); |
cssやjsの末尾についているWPバージョン
同様にcssやjsの末尾にもワードプレスバージョンが出力されるのでこれも消します。
1 |
<script type='text/javascript' src='https://example.com/wp-includes/js/admin-bar.min.js?ver=5.0.3'></script> |
こちらもfunctions.phpにadd_filter関数を追加します。
1 2 3 4 5 6 7 8 9 10 |
function remove_wp_ver_css_js($src) { if (strpos($src, 'ver='.get_bloginfo('version'))) { $src = remove_query_arg('ver', $src); } return $src; } add_filter('style_loader_src', 'remove_wp_ver_css_js', 9999); add_filter('script_loader_src', 'remove_wp_ver_css_js', 9999); |
cssやjs自体のバージョンやプラグインのバージョン
最後はお好みですが、cssやjs自体のバージョンやプラグインのバージョンも消すことができます。
1 |
<script type='text/javascript' src='https://example.com/wp-includes/js/jquery/jquery.js?ver=1.12.4'></script> |
functions.phpにadd_filter関数を追加します。
1 2 3 4 5 6 7 8 9 10 |
function remove_cssjs_ver($src) { if (strpos($src, 'ver=')) { $src = remove_query_arg('ver', $src); } return $src; } add_filter('style_loader_src', 'remove_cssjs_ver', 9999); add_filter('script_loader_src', 'remove_cssjs_ver', 9999); |
strpos関数
ここで使われているstrpos関数はPHPに用意されているもので、文字列を検索して任意の文字列があるかどうかを判定するという機能を持ちます。あれば現れた位置を数値(インデックス)で返し、なければfalseを返します。
1 2 3 |
$src ='https://example.com/wp-includes/js/jquery/jquery.js?ver=1.12.4'; strpos($src, 'ver='); |
第一引数には検索対象となる文字列を、第二引数には探すべき文字列を渡します。ここでは「ver=」という文字列が含まれるかどうかを判定しています。if文と組み合わせて「ver=」という文字列が現れたら…という処理に入ります。
この例ではstrposはint(52)を返します。またver=が2箇所以上あった場合でも返すのは最初に現れた位置のみとなりますが、今回は用途が限定されているので問題ありません。
remove_query_arg関数
remove_query_arg関数はワードプレスの関数になります。URIから特定のパラメータを取り除く機能があります。
1 2 3 |
$src ='https://example.com/wp-includes/js/jquery/jquery.js?ver=1.12.4'; $src = remove_query_arg('ver', $src); |
第一引数に取り除きたいパラメータ、第二引数に対象となるURIを渡します。パラメータが取り除かれたものが返り値になるので変数で受けます。
URIにおけるパラメータとは「?ver=1.12.4」のように「?」 + 「文字列」 + 「=」+ 「数値や文字列」のことです。
コメント
コメントはありません。