WordPressヘッダーの不要なdns-prefetchを削除する

WordPressを軽量化するために、ヘッダーに挿入されるdns-prefetchを削除したいと思います。
なかなか消えないdns-prefetchがあり色々と調べたところ、WordPress本体の挿入コードに加えJetpackの挿入コードがあるようでした。
その他にもプラグインによって挿入されるコードもあります。

ですから何によってdns-prefetchが挿入されるのか見極めるために、最低限のプラグインを有効にしてコードを確認するのがオススメです。

WordPressによって挿入されるdns-prefetch

WordPress本体によって挿入されるdns-prefetchは、以下のものがあります。

<link rel=’dns-prefetch’ href=’//s.w.org’>

この挿入コードを消すにはfunctions.phpに以下のコードを追加します。

add_filter( ‘emoji_svg_url’, ‘__return_false’ );

https://wordpress.org/support/topic/remove-the-new-dns-prefetch-code/

 

Jetpackによって挿入されるdns-prefetch

なかなか消えないdns-prefetchはJetpackによるものでした。
Jetpackのモジュールを無効化することで挿入コードを消すことができます。

Jetpackモジュールによって挿入されるコードは以下のものがあります。

https://wordpress.org/support/topic/slow-slow-sites-so-much-additional-js-junk/

ショートコード埋め込み
<link rel=’dns-prefetch’ href=’//v0.wordpress.com’/>

いいね
<link rel=’dns-prefetch’ href=’//widgets.wp.com’/>
<link rel=’dns-prefetch’ href=’//s0.wp.com’/>
<link rel=’dns-prefetch’ href=’//0.gravatar.com’/>
<link rel=’dns-prefetch’ href=’//1.gravatar.com’/>
<link rel=’dns-prefetch’ href=’//2.gravatar.com’/>

Photon
<link rel=’dns-prefetch’ href=’//i0.wp.com’/>
<link rel=’dns-prefetch’ href=’//i1.wp.com’/>
<link rel=’dns-prefetch’ href=’//i2.wp.com’/>

それぞれのモジュールを無効にすることで、dns-prefetchを消すことができます。
モジュールを個別に無効化するには以下の手順で設定できます。

 

Jetpackモジュールを個別に無効化する方法

Jetpackの設定画面に移動します。
設定画面の一番下の、「Debug」リンクを選択します。

 

デバッグセンターが開くので、一番下にある「お使いのサイトで使用可能な Jetpack モジュールの全一覧にアクセスします。」をクリックします。

 

モジュールの一覧画面が開きます。
モジュールを無効にできます。

 

モジュールを無効にした後、目的のdns-prefetchが消えたことを確認します。

キャッシュプラグインを導入していれば、キャッシュをクリアして確認します。