WordPressでは、テーマの
内にさまざまな情報が自動的に出力されます。例えば、RSDリンクやWLWマニフェスト、バージョン情報などがありますが、これらは必ずしも必要ではありません。特にパフォーマンスやセキュリティの観点からは、不要なタグを削除することが推奨されます。functions.phpに記述してheadタグの出力を制御する
不要なheadタグは、functions.php
に記述することで削除可能です。以下のコードを追加してください。
// head内の不要なタグを削除
remove_action('wp_head', 'rsd_link'); // RSDリンク
remove_action('wp_head', 'wlwmanifest_link'); // WLWマニフェスト
remove_action('wp_head', 'wp_generator'); // WordPressバージョン
remove_action('wp_head', 'feed_links_extra', 3); // カテゴリーフィード
remove_action('wp_head', 'feed_links', 2); // 投稿・コメントのフィード
remove_action('wp_head', 'index_rel_link'); // インデックスページへのリンク
remove_action('wp_head', 'start_post_rel_link', 10, 0); // 開始ポストへのリンク
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0); // 前後記事へのリンク
remove_action('wp_head', 'wp_shortlink_wp_head', 10, 0); // ショートリンク
WordPressバージョンをmetaタグから非表示にする
バージョン情報は攻撃者にとって脆弱性の手がかりになるため、非表示にするのがベストです。上記のwp_generator
を削除するコードに加えて、以下を追加することでRSSフィードなどにも表示されなくなります。
// バージョン情報を完全に非表示
add_filter('the_generator', '__return_empty_string');
emoji関連のコードを削除する
WordPressは絵文字(emoji)対応のために複数のスクリプトを読み込んでいます。不要な場合は以下のコードで削除できます。
// emoji関連のコードを削除
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');
remove_action('admin_print_scripts', 'print_emoji_detection_script');
remove_action('admin_print_styles', 'print_emoji_styles');