WordPressで作られたページのソースを見てみると、headタグの中に様々な記述がされていることに気がつくと思います。
基本的に、使わないものは極力記載せずに、シンプルにすることが大切です。
シンプルにすることで、表示速度の改善や、CSSがうまく機能しないなどのトラブルを防ぐことができます。
WordPressが自動で出力してくれるタグは、「外観 > テーマの編集」の「ヘッダー(header.php)」に記述された下記の部分になります。
1 |
<?php wp_head(); ?> |
今回は、TwentyFifteenのテーマをカスタマイズしていきます。
削除するタグは、
- feedタグ
- generatorタグ
- RSD(Really Simple Discovery)タグ
- Windows Live Writer用タグ
- TwentyFifteen独自のタグ
それでは、一つずつ見ていきましょう。
feedタグの削除
まずは、下記の2つのタグについてですが、
1 2 |
<link rel="alternate" type="application/rss+xml" title="○○○ » フィード" href="http://example.com/?feed=rss2" /> <link rel="alternate" type="application/rss+xml" title="○○○ » コメントフィード" href="http://example.com/?feed=comments-rss2" /> |
RSSのフィードタグとコメントのフィードタグになります。
これらを消すには、functions.phpの一番上に下記を追記します。
1 |
remove_action('wp_head', 'feed_links', 2); |
remove_actionという関数でアクションの取り消しを指示しています。
そもそも最初の設定でどのように記述されているかというと、wp-includes/default-filters.php 内に様々な設定が書かれています。
remove_actionの第3引数は優先順位を表す数値ですが、default-filters.php に書かれた数値と同じ値を記述しておきます。
この状態で、ページのソースを確認してみると、先ほどのフィードタグが消えているかと思います。
generatorタグの削除
続いて、generatorと書かれたメタタグですが、
1 |
<meta name="generator" content="WordPress 4.1" /> |
このページを作成したエディタをブラウザや検索ロボットに知らせるタグになります。
こちらも先ほどと同様で、functions.phpに下記を追記することで、削除することができます。
1 |
remove_action('wp_head', 'wp_generator'); |
RSD(Really Simple Discovery)の削除
RSDと書かれた下記のタグ
1 |
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://example.com/xmlrpc.php?rsd" /> |
実際にURLを叩いてみると、下記のようなソースを返してくれます。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<rsd version="1.0" xmlns="http://archipelago.phrasewise.com/rsd"> <service> <engineName>WordPress</engineName> <engineLink>http://wordpress.org/</engineLink> <homePageLink>http://example.com</homePageLink> <apis> <api name="WordPress" blogID="1" preferred="true" apiLink="http://example.com/xmlrpc.php" /> <api name="Movable Type" blogID="1" preferred="false" apiLink="http://example.com/xmlrpc.php" /> <api name="MetaWeblog" blogID="1" preferred="false" apiLink="http://example.com/xmlrpc.php" /> <api name="Blogger" blogID="1" preferred="false" apiLink="http://example.com/xmlrpc.php" /> </apis> </service> </rsd> |
これは、WordPressで作られたサイトで、MovableTypeなどから http://example.com/xmlrpc.php を使って、投稿とかできますよ、というのを教えてくれるものになります。
これを削除するには、下記を追記します。
1 |
remove_action('wp_head', 'rsd_link'); |
Windows Live Writer用タグの削除
wlwmanifestと書かれた下記のタグ
1 |
<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://example.com/wp-includes/wlwmanifest.xml" /> |
使ったことがないのですが、Windows Live Writerというマイクロソフトが開発したブログを編集するためのソフトのようで、それに対応したタグのようです。
これを削除するには、下記を追記します。
1 |
remove_action('wp_head', 'wlwmanifest_link'); |
shortlinkタグの削除
shortlinkは下記のように、WordPressで設定されている記事ごとのIDで表されたURLが指定されています。
1 |
<link rel='shortlink' href='http://example.com/?p=1' /> |
これを削除するには、下記を追記します。
1 |
remove_action('wp_head', 'wp_shortlink_wp_head'); |
TwentyFifteen独自のタグを一括削除
1 2 3 4 5 6 7 8 9 10 11 |
<link rel='stylesheet' id='twentyfifteen-fonts-css' href='//fonts.googleapis.com/css?family=Noto+Sans%3A400italic%2C700italic%2C400%2C700%7CNoto+Serif%3A400italic%2C700italic%2C400%2C700%7CInconsolata%3A400%2C700&subset=latin%2Clatin-ext' type='text/css' media='all' /> <link rel='stylesheet' id='genericons-css' href='http://example.com/wp-content/themes/untrois1/genericons/genericons.css?ver=3.2' type='text/css' media='all' /> <link rel='stylesheet' id='twentyfifteen-style-css' href='http://example.com/wp-content/themes/untrois1/style.css?ver=4.1' type='text/css' media='all' /> <!--[if lt IE 9]> <link rel='stylesheet' id='twentyfifteen-ie-css' href='http://example.com/wp-content/themes/untrois1/css/ie.css?ver=20141010' type='text/css' media='all' /> <![endif]--> <!--[if lt IE 8]> <link rel='stylesheet' id='twentyfifteen-ie7-css' href='http://example.com/wp-content/themes/untrois1/css/ie7.css?ver=20141010' type='text/css' media='all' /> <![endif]--> <script type='text/javascript' src='http://example.com/wp-includes/js/jquery/jquery.js?ver=1.11.1'></script> <script type='text/javascript' src='http://example.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.2.1'></script> |
これらのTwentyFifteen独自のまとまりを一括して削除するには、
1 |
add_action( 'wp_enqueue_scripts', 'twentyfifteen_scripts' ); |
この部分をコメントアウトすることで、全て削除することができます。
ただし、メインのスタイルシートやjQueryまで消えてしまうので、ご注意ください。
シンプルが一番いい
上記のことを全て行うと、ほとんどのタグを削除してしまうので、それなら wp_head(); を削除して、必要な分だけ手書きするのも一つの方法です。
いずれにしても少しでもシンプルなコードにするように心がけましょう。