JOURNAL クリエイティブとマーケティングの話

WordPressのhead内の不要な要素を削除する

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のバージョンアップに合わせて追加されるものもありますので、定期的にメンテナンスするとよいかもしれません。