wp_head()はwordpressで使用されているテーマには必ず書かれている関数です。
では、このwp_head()
は何をしているかというと、htmlの<head>
タグ内に<meta>
タグやjavacript・cssを読み込むためのタグ等を出力しています。また、プラグイン固有のスタイルシートなども読み込んでますのでwp_head()
がないと正常にサイトやブログが機能しないといったことになります。
ただ、出力されるすべてが必ず必要かというとそうではなく、人によりけりですがいらないタグも吐き出されています。
今回は<head>
内のタグを整理するという意味でも「これはいらないんじゃない?」と思われるタグを削除する方法について触れていきます。
絵文字を使用するために読み込まれるJC・CSSの削除
wordpressでは記事内で絵文字が使えるように設定されていますが、使用している方をほとんど見たことがありません…ですので、この絵文字関連のjavascriptとcssを読み込むタグを削除します。
下記のコードをfunctions.phpに追記すればOKです。
remove_action('wp_head','print_emoji_detection_script',7);
remove_action('wp_print_styles','print_emoji_styles',10);
remove_action('admin_print_scripts','print_emoji_detection_script');
remove_action('admin_print_styles','print_emoji_styles');
外部投稿ツールから記事投稿を受け入れるタグを削除
wordpressではブログツールを使用して記事が投稿できるようになっています。有名なブログツールでいうと、マイクロソフト社開発したWindows Live Writerでしょうか。
その他にもあるようですが、私自身ブログツールを使用したことがありませんし、こと、wordpressに関してはそれほど多くの方が使用していないように思われます…ですので、ここでは外部投稿ツール関連のタグを削除します。
remove_action('wp_head','wlwmanifest_link');
remove_action('wp_head','rsd_link');
wordpressのバージョン表記のタグを削除
wordpressのバージョンを表記するタグはどういう意図があるのかまではわからないのですが、セキュリティの観点からすると削除した方がいいように思います。
remove_action('wp_head','wp_generator');
ここまでのものをまとめると
remove_action('wp_head','print_emoji_detection_script',7);
remove_action('wp_print_styles','print_emoji_styles',10);
remove_action('admin_print_scripts','print_emoji_detection_script');
remove_action('admin_print_styles','print_emoji_styles');
remove_action('wp_head','wlwmanifest_link');
remove_action('wp_head','rsd_link');
remove_action('wp_head','wp_generator');
上記のコードをfunctions.phpに追記すれば当該タグを削除することができます。
他にも「RSSフィードのurl」や「Googleのスニペット表示」「外部コンテンツの埋め込み」などのタグもあるのですが、ひとまず上記の内容で最低限のタグは削除できるのかなと考えています。
必要のないタグを減らすということはブログやサイトの読み込みが速くなるので、全く触ったことがないようであればこのタイミングでwp_head()
が吐き出す内容を整理してみてはいかがでしょうか。