WordPressでは、デフォルトの状態でhead内に様々な要素が挿入されるようになっています。
しかし中にはWordPressのバージョン情報など、セキュリティ上の問題などで外部に知らせない方がいいような情報やあまり重要度の高くない情報を表示するためのタグなどがあります。
今回はhead内の無駄な記述を削除する方法をご紹介します。
WordPressのhead内の不要な要素を削除する
functions.phpに記述します。
- functions.php
/* head内の不要な要素を削除
---------------------------------------------------------- */
remove_action( 'wp_head', 'feed_links', 2 ); //RSSフィード
remove_action( 'wp_head', 'feed_links_extra', 3 ); //RSSフィード
remove_action( 'wp_head', 'rsd_link' ); //Really Simple Discovery
remove_action( 'wp_head', 'wlwmanifest_link' ); //Windows Live Writer
remove_action( 'wp_head', 'index_rel_link' ); //indexへのリンク
remove_action( 'wp_head', 'parent_post_rel_link', 10, 0 ); //分割ページへのリンク
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_generator' ); //WordPressのバージョン
remove_action( 'wp_head', 'print_emoji_detection_script', 7 ); //絵文字対応
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' ); //絵文字対応
remove_action( 'wp_print_styles', 'print_emoji_styles' ); //絵文字対応
remove_action( 'admin_print_styles', 'print_emoji_styles' ); //絵文字対応
remove_action('wp_head','rest_output_link_wp_head'); //Embed対応
function remove_recent_comments_style() {
global $wp_widget_factory;
remove_action( 'wp_head', array( $wp_widget_factory->widgets['WP_Widget_Recent_Comments'], 'recent_comments_style' ) );
}
add_action( 'widgets_init', 'remove_recent_comments_style' );
一応ひとつずつ、簡単に説明していきます。
RSSフィード
RSSフィードのURLを出力するタグ。
remove_action( 'wp_head', 'feed_links', 2 ); //RSSフィード
remove_action( 'wp_head', 'feed_links_extra', 3 ); //RSSフィード
Really Simple Discovery
Really Simple Discoveryへのリンクを出力するタグ。外部のブログ投稿ツールを使っている場合は削除しないでください。
remove_action( 'wp_head', 'rsd_link' ); //Really Simple Discovery
Windows Live Writer
Windows Live Writerへのリンクを出力するタグ。Windows Live Writerを使用する場合は削除しないでください。
remove_action( 'wp_head', 'wlwmanifest_link' ); //Windows Live Writer
Indexへのリンク
Indexページへのリンクを出力するタグ。
remove_action( 'wp_head', 'index_rel_link' ); //Indexへのリンク
分割ページへのリンク
複数にわたるページの分割されたページへのリンクを出力するタグ。
remove_action( 'wp_head', 'parent_post_rel_link', 10, 0 ); //分割ページへのリンク
remove_action( 'wp_head', 'start_post_rel_link', 10, 0 ); //分割ページへのリンク
前後のページへのリンク
前後のページへのリンクを出力するタグ。
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); //前後のページへのリンク
WordPressのバージョン
WordPressのバージョン情報を出力するタグ
remove_action( 'wp_head', 'wp_generator' ); //WordPressのバージョン
絵文字対応
絵文字に対応するためのJavaScriptとCSSを読み込むタグ。
remove_action( 'wp_head', 'print_emoji_detection_script', 7 ); //絵文字対応
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' ); //絵文字対応
remove_action( 'wp_print_styles', 'print_emoji_styles' ); //絵文字対応
remove_action( 'admin_print_styles', 'print_emoji_styles' ); //絵文字対応
Embed対応
WordPressのEmbed機能を有効にするためのタグ。
remove_action('wp_head','rest_output_link_wp_head'); //Embed対応
まとめ
以上がWordPRessのhead内の不要な要素を削除する方法です。head内に挿入されるタグは他にもあります。また、WordPressのバージョンアップに合わせて追加されるものもありますので、定期的にメンテナンスするとよいかもしれません。