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が消えたことを確認します。
キャッシュプラグインを導入していれば、キャッシュをクリアして確認します。