WordPressがhead内へ追加する不要なタグを削除する
公開日:2014年5月25日
最終更新日:2014年7月13日
WordPressではwp_head()を呼び出したところで、自動的に出力されるlinkタグ・metaタグがいくつかあります。それらの追加されたタグは不要な場合も多いので、出力されないように削除する方法を解説します。
【コンテンツ】
【記事執筆時の環境】
WordPress 3.9.1
head内に出力されるタグコード
ブラウザでHTMLコードを表示させてみるとわかりますが、以下のようなタグが追加で出力されています。
※使用しているテーマや表示させているページによって追加されるタグは異なります。
1 2 3 4 5 6 7 8 9 |
<link rel="alternate" type="application/rss+xml" title="example » フィード" href="http://example.com/feed/" /> <link rel="alternate" type="application/rss+xml" title="example » コメントフィード" href="http://example.com/comments/feed/" /> <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://example.com/xmlrpc.php?rsd" /> <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://example.com/wp-includes/wlwmanifest.xml" /> <link rel='prev' title='前の記事のタイトル' href='http://example.com/prev-post/' /> <link rel='next' title='次の記事のタイトル' href='http://example.com/next-post/' /> <link rel='shortlink' href='http://example.com/?p=18' /> <link rel='canonical' href='http://example.com/current-post/' /> <meta name="generator" content="WordPress 3.9.1" /> |
RSSフィード
サイト全体のフィードと、コメントフィードの2つが出力されています。
これは必要とする場合もありますから、状況に合わせて削除しましょう。
1 2 |
<link rel="alternate" type="application/rss+xml" title="example » フィード" href="http://example.com/feed/" /> <link rel="alternate" type="application/rss+xml" title="example » コメントフィード" href="http://example.com/comments/feed/" /> |
EditURI
Really Simple Discoveryというツールを使って記事を編集するときのリンクアドレスです。
通常はWordPress管理画面しか使わないと思いますから不要です。
1 |
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://example.com/xmlrpc.php?rsd" /> |
wlwmanifest
Windows Live Writerを使って記事を編集するときのリンクアドレスです。
Windows Live Writerを使わないなら不要です。
1 |
<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://example.com/wp-includes/wlwmanifest.xml" /> |
前後の記事のリンク
ページネーションのための前後の記事のリンクです。
これも必要性を感じないなら削除しましょう。
1 2 |
<link rel='prev' title='前の記事のタイトル' href='http://example.com/prev-post/' /> <link rel='next' title='次の記事のタイトル' href='http://example.com/next-post/' /> |
shortlink
「http://サイトドメイン/?p=postID」という形式の、デフォルトパーマリンクで示した短縮URLです。自分が短縮URLを知る手段は他にありますし、ここに出力している意味がよくわからないので削除しても問題ないでしょう。
1 |
<link rel='shortlink' href='http://example.com/?p=18' /> |
canonical
どのページが優先なのか知らせるcanonical属性ですが、デフォルトで出力されるのは好ましくないので削除しましょう。canonicalが必要ならプラグインなど他の手段を使えばよいです。
1 |
<link rel='canonical' href='http://example.com/current-post/' /> |
WordPressバージョン
WordPressで作ったサイトで、しかもそのバージョンまで知りたい人は誰がいるのでしょうか?
プラグインなどに問題ないようでしたら削除しましょう。
1 |
<meta name="generator" content="WordPress 3.9.1" /> |
出力されるタグを記述しているファイル
wp_head()呼び出し時にどんなタグを出力するかは、「wp-includes/default-filters.php」に記述されています。
ファイル内を「// Actions」で検索すると、add_action()で以下のタグがwp_head()呼び出し時に出力されているのがわかります。 ※WordPress3.9.1で確認
1 2 3 4 5 6 7 8 9 10 11 12 13 |
add_action( 'wp_head', 'wp_enqueue_scripts', 1 ); add_action( 'wp_head', 'feed_links', 2 ); add_action( 'wp_head', 'feed_links_extra', 3 ); add_action( 'wp_head', 'rsd_link' ); add_action( 'wp_head', 'wlwmanifest_link' ); add_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); add_action( 'wp_head', 'locale_stylesheet' ); add_action( 'wp_head', 'noindex', 1 ); add_action( 'wp_head', 'wp_print_styles', 8 ); add_action( 'wp_head', 'wp_print_head_scripts', 9 ); add_action( 'wp_head', 'wp_generator' ); add_action( 'wp_head', 'rel_canonical' ); add_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 ); |
不要なタグの削除方法
default-filters.phpの中で加えられたActionを、functions.phpの中でremove_action()を使いそのまま削除してやればよいです。
以下がそのコードになりますので、必要なものをfunctions.phpに記述します。
1 2 3 4 5 6 7 8 |
remove_action( 'wp_head', 'feed_links', 2 ); //サイト全体のフィード remove_action( 'wp_head', 'feed_links_extra', 3 ); //その他のフィード remove_action( 'wp_head', 'rsd_link' ); //Really Simple Discoveryリンク remove_action( 'wp_head', 'wlwmanifest_link' ); //Windows Live Writerリンク remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); //前後の記事リンク remove_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 ); //ショートリンク remove_action( 'wp_head', 'rel_canonical' ); //canonical属性 remove_action( 'wp_head', 'wp_generator' ); //WPバージョン |
プラグインを使った削除
不要なタグを削除してくれるプラグインもあります。
そのひとつとして、「WP Total Hacks」というプラグインがあります。
例えばバージョン情報を消すには、[バージョン情報をheadから削除]をクリックして、
[有効化]を選択します。
このプラグインは、投稿記事のリビジョン制限など他にもたくさんの機能を持っています。
他の機能も使うのであれば、このプラグインで不要タグを削除すると便利です。
スポンサーリンク