wp_headで出力されたコードの中で不要なものを非表示にする方法

WordPressのwp_head()関数で出力されるlinkや<meta>、scriptなどのタグの中から、非表示にできるもの(不要なコード)を出力しないようにする方法のご紹介です。

wp_headの出力コードの中で不要なものを非表示にする

テーマファイルのheader.phpに書かれることが多いwp_head()関数は、ソースの</head>の直前で使うことで、さまざまなタグやscriptタグを出力します。

プラグインのCSSやJavascriptファイルも出力するため、とても重要な関数なんですが、出力されたコードの中で不要だと思うものがあれば、以下のようにfunctions.phpで個別に非表示にすることができます。

remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'wp_shortlink_wp_head');
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head');
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');

WordPressコアのバージョン情報

WordPressのバージョン情報を非表示にするときに指定します。有料テーマとかを使うと最初から非表示設定されていることも多いので、もし<meta name=”generator”>が表示される場合は、消しておくと良いでしょう。

WordPressコアのバージョン情報を非表示
remove_action(‘wp_head’, ‘wp_generator’);
[code title=”非表示になるコード”] meta name="generator" content="WordPress 5.2.2"
[/code]

フィード出力

RSSフィードを非表示にします。

フィード出力
remove_action(‘wp_head’, ‘feed_links’, 2);
[code title=”非表示になるコード”] <link rel="alternate" type="application/rss+xml" title="ブログ名 &raquo; フィード" href="ブログURL/feed/">
<link rel="alternate" type="application/rss+xml" title="ブログ名 &raquo; コメントフィード" href="ブログURL/comments/feed/">
[/code]

コメントのフィード出力

コメントのRSSフィードを非表示にします。

コメントのフィードを非表示
remove_action(‘wp_head’, ‘feed_links_extra’, 3);
[code title=”非表示になるコード”] <link rel="alternate" type="application/rss+xml" title="ブログ名 &raquo; のコメントのフィード" href="記事のパーマリンク/feed/">
[/code]

EditURI(XML-RPCでの投稿)

xmlrpc.php?rsdのURLを非表示にします。

EditURI(XML-RPCでの投稿)を非表示
remove_action(‘wp_head’, ‘rsd_link’);
[code title=”非表示になるコード”] <link rel="EditURI" type="application/rsd+xml" title="RSD" href="ブログURL/xmlrpc.php?rsd" />
</style>
[/code]

wlwmanifest(Windows Live Writerでの投稿)

Windows Live Writerでの投稿URLを非表示にします。

wlwmanifest(Windows Live Writerでの投稿)を非表示
remove_action(‘wp_head’, ‘wlwmanifest_link’);
[code title=”非表示になるコード”] <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="ブログURL/wp-includes/wlwmanifest.xml" />
[/code]

shortlink(短縮URL)

ブログURL/?p=131などの短縮URLを非表示にします。

shortlink(短縮URL)を非表示
remove_action(‘wp_head’, ‘wp_shortlink_wp_head’);
[code title=”非表示になるコード”] <link rel=’shortlink’ href=’ブログURL/?p=131′ />
[/code]

rel=’prev’とrel=’next’(過去の投稿へと次の投稿へ)

rel=’prev’とrel=’next’のリンクタグを非表示にします。

rel='prev'とrel='next'(過去の投稿へと次の投稿へ)
remove_action(‘wp_head’, ‘adjacent_posts_rel_link_wp_head’, 10, 0);
[code title=”非表示になるコード”] <link rel=’prev’ title=’過去の投稿へ’ href=’記事のパーマリンク/’>
<link rel=’next’ title=’次の投稿へ’ href=’記事のパーマリンク/’>
[/code]

絵文字のスクリプト

絵文字に関するscriptタグを非表示にします。

絵文字のスクリプト
remove_action(‘wp_head’, ‘print_emoji_detection_script’, 7);
[code title=”非表示になるコード”] <script type="text/javascript">
window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/12.0.0-1\/72×72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/12.0.0-1\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/ブログURL\/wp-includes\/js\/wp-emoji-release.min.js"}};
!function(a,b,c){function d(a,b){var c=String.fromCharCode;l.clearRect(0,0,k.width,k.height),l.fillText(c.apply(this,a),0,0);var d=k.toDataURL();l.clearRect(0,0,k.width,k.height),l.fillText(c.apply(this,b),0,0);var e=k.toDataURL();return d===e}function e(a){var b;if(!l||!l.fillText)return!1;switch(l.textBaseline="top",l.font="600 32px Arial",a){case"flag":return!(b=d([55356,56826,55356,56819],[55356,56826,8203,55356,56819]))&&(b=d([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]),!b);case"emoji":return b=d([55357,56424,55356,57342,8205,55358,56605,8205,55357,56424,55356,57340],[55357,56424,55356,57342,8203,55358,56605,8203,55357,56424,55356,57340]),!b}return!1}function f(a){var c=b.createElement("script");c.src=a,c.defer=c.type="text/javascript",b.getElementsByTagName("head")[0].appendChild(c)}var g,h,i,j,k=b.createElement("canvas"),l=k.getContext&&k.getContext("2d");for(j=Array("flag","emoji"),c.supports={everything:!0,everythingExceptFlag:!0},i=0;i<j.length;i++)c.supports[j[i]]=e(j[i]),c.supports.everything=c.supports.everything&&c.supports[j[i]],"flag"!==j[i]&&(c.supports.everythingExceptFlag=c.supports.everythingExceptFlag&&c.supports[j[i]]);c.supports.everythingExceptFlag=c.supports.everythingExceptFlag&&!c.supports.flag,c.DOMReady=!1,c.readyCallback=function(){c.DOMReady=!0},c.supports.everything||(h=function(){c.readyCallback()},b.addEventListener?(b.addEventListener("DOMContentLoaded",h,!1),a.addEventListener("load",h,!1)):(a.attachEvent("onload",h),b.attachEvent("onreadystatechange",function(){"complete"===b.readyState&&c.readyCallback()})),g=c.source||{},g.concatemoji?f(g.concatemoji):g.wpemoji&&g.twemoji&&(f(g.twemoji),f(g.wpemoji)))}(window,document,window._wpemojiSettings);
</script>
[/code]

絵文字のスタイル

絵文字の<style>タグを非表示にします。

絵文字のスタイル
remove_action(‘wp_print_styles’, ‘print_emoji_styles’);
[code title=”非表示になるコード”] <style type="text/css">
img.wp-smiley,
img.emoji {
display: inline !important;
border: none !important;
box-shadow: none !important;
height: 1em !important;
width: 1em !important;
margin: 0 .07em !important;
vertical-align: -0.1em !important;
background: none !important;
padding: 0 !important;
}
</style>
[/code]

あと、あまりオススメしませんが、以下のコードも非表示にできます。
[code lang=”php”] remove_action(‘wp_head’, ‘rel_canonical’);
remove_action(‘wp_head’, ‘wp_print_styles’, 8);
remove_action(‘wp_head’, ‘wp_print_head_scripts’, 9);
[/code]

まず、rel_canonicalは、カノニカルURLを特定のページにだけ表示させるなど、ブログのカスタマイズをしたい場合に非表示にしても良いとは思いますが、基本は残しておくのが良いです。

・・・

続いてwp_print_styleswp_print_head_scriptsですが、これはhead内ではlinkやタグを非表示にして、wp_footer()の方で出力します。

この結果、デザインレイアウトがおかしくなったり、プラグインによっては一部動作しなくなる可能性があるので、必ず動作検証が必要です。

ブログを始めるならWordPressテーマSTORKがオススメ

理由は以下の記事でまとめています。

【STORK】有料テーマ購入を迷う人にストークをオススメする7つの理由2021年版

2019年6月1日

綺麗なデザインが最初から用意されているので、「ブログを書きたい」と思った時からすぐに始めることができます。しかも、執筆に便利なツールも一通りそろっているので、「書くことだけ」に集中できるという、ブロガーにとってはとても魅力的なテーマです。

是非STORKを試してみてくださいね★

関連記事

コメントを残す

ABOUTこの記事をかいた人

STORKのテーマやプラグインなど、WordPressを使ったアフィリエイトに関する記事を中心に紹介しています。そのほかにもMacやiPhone、HTML、CSS、Javascript、PHPなどの記事もちょこちょこ書いています★