the thor(ザ・トール) 第三者コードの影響を抑えてください【改善方法】

SEO

PageSpeed Insights の「第三者コードの影響を抑えてください」を改善したので、その方法を解説します。

今回はwordpressテーマは「the thor」を使っています。
他のテーマでも基本的には同じやり方になりますが、テーマによってカスタマイズ画面や、親テーマ、子テーマの構成がことなる場合が有る為、その際はご自分のテーマに置き換えて編集してください。

今回使った方法

この「第三者コードの影響を抑えてください」を改善する方法を検索すると、wordpressの場合プラグインの「Autoptimize」を使う方法も出てきますが、試したところ全く改善されなかった為、別の方法をとりました。

別の方法をとってわかったのですが、おそらく「Autoptimize」は「AdSenseが大幅に遅くしている原因」でなければ充分効果はありそうです。

今回使った方法は。「Adsenseの遅延読込み」です。

設定する前に気をつけること

これも色々な記事を見て、設定してみて分かったことなのですが、
Adsenseの遅延読込みでも、自動広告」と「手動広告」の場合はやり方が違うということです。

意外とこのことに触れている記事は見かけなかった為、設定する際にはココを理解していないと、設定しても改善されないということになりかねません。

それでは「手動広告」と「自動広告」の設定手順を順番に説明していきます。

両方使っている方は両方とも設定してください。

手動広告の遅延読込み

「外観」「カスタマイズ」「広告設定」

アーカイブ用、個別ページ用の両方に私は設定していた為、ココを修正しました。

<script>部分を削除します。

設定してある箇所すべて削除します。

ウィジェット部分にも設定してあれば同様に削除してください。

次に「外観」「カスタマイズ」「基本設定」「高度な設定」に移動します。

</body>直上の自動入力エリアに下記コードを追加します。

<script>
// AdSense手動広告遅延読込み
// <![CDATA[
// lazy load ads
var lazyloadads = false;
window.addEventListener("scroll", function() {
    if ((document.documentElement.scrollTop != 0 && lazyloadads === false) || (document.body.scrollTop != 0 && lazyloadads === false)) {

        (function() {
            var ad = document.createElement('script');
            ad.type = 'text/javascript';
            ad.async = true;
            ad.src = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js';
            var sc = document.getElementsByTagName('script')[0];
            sc.parentNode.insertBefore(ad, sc);
        })();

        lazyloadads = true;
    }
}, true)
//]]>
</script>

the thorの場合はカスタマイズの設定箇所に</body>直上の入力エリアがありますが、別テーマで入力エリアがない場合は、直接「外観」「テーマエディター」に移動し、footer.phpの</body>直前に追加してください。

テーマによっては子テーマにfooter.phpがなく、親テーマのfooter.phpを触る必要がある場合があります。

テーマのアップデートがかかった場合、親テーマは上書きされてしまうので基本的には子テーマに追加したいのですが、親テーマに追加せざるを得ない場合は、しっかりとメモを取っておくことをおすすめします。

ここで気をつけなければいけないのが、自動広告も設定してある場合、もしくは自動広告はオフにしてあるが、以前設定していてコードが残っている場合は削除しないと改善されません。

自動広告の遅延読込み

次は自動広告の遅延読込み設定をします。

自動広告を現在も過去も設定していない場合はスルーしてください。

「外観」「カスタマイズ」「基本設定」「高度な設定」に移動します。

</head>直上に追加してある自動広告の設定タグを丸ごと削除します。

</body>直上の自動入力エリアに下記コードを追加します。

「ad.dataset.adClient = 'ca-pub-xxxxxxxxxxxxxxxx;」は自分の番号に置き換えてください。

※手動広告の遅延読込みも設定している場合はそのコードは残して下記コードを並べて追加してください。

<script>
// AdSense自動広告設定
(function(window, document) {
function main() {

var ad = document.createElement('script’);
ad.type = 'text/javascript’;
ad.async = true;
ad.dataset.adClient = 'ca-pub-xxxxxxxxxxxxxxxx;
ad.src = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js’;
var sc = document.getElementsByTagName('script’)[0];
sc.parentNode.insertBefore(ad, sc);
}

// AdSense自動広告遅延読込み
var lazyLoad = false;
function onLazyLoad() {
if (lazyLoad === false) {

lazyLoad = true;
window.removeEventListener('scroll’, onLazyLoad);
window.removeEventListener('mousemove’, onLazyLoad);
window.removeEventListener('mousedown’, onLazyLoad);
window.removeEventListener('touchstart’, onLazyLoad);
window.removeEventListener('keydown’, onLazyLoad);

main();
}
}
window.addEventListener('scroll’, onLazyLoad);
window.addEventListener('mousemove’, onLazyLoad);
window.addEventListener('mousedown’, onLazyLoad);
window.addEventListener('touchstart’, onLazyLoad);
window.addEventListener('keydown’, onLazyLoad);
window.addEventListener('load’, function() {

if (window.pageYOffset) {
onLazyLoad();
}
});
})(window, document);
</script>

これで遅延読込みの設定は終わりです。

追加で事前読込みの設定

遅延読込みとは別の設定ですが、

「外観」「カスタマイズ」「基本設定」「高度な設定」</head>直上入力エリアに下記コードを追加すると、さらに「第三者コードの影響を抑えてください」の項目が改善されます。

<!-- GoogleAdSensecDNS プリフェッチ -->
<meta http-equiv="x-dns-prefetch-control" content="on">
<link rel=”dns-prefetch” href=”//pagead2.googlesyndication.com”>
<link rel=”dns-prefetch” href=”//googleads.g.doubleclick.net”>
<link rel=”dns-prefetch” href=”//tpc.googlesyndication.com”>
<link rel=”dns-prefetch” href=”//www.gstatic.com”>
<link rel=”dns-prefetch” href=”//adservice.google.com”>
<link rel=”dns-prefetch” href=”//adservice.google.ca”>
<link rel=”dns-prefetch” href=”//www.google.com”>
<link rel=”dns-prefetch” href=”//stats.wp.com”>
<link rel=”dns-prefetch” href=”//cse.google.com”>
<link rel=”dns-prefetch” href=”//www.googletagmanager.com”>

<!-- 第三者コードの影響を抑える -->
<link rel=’preconnect dns-prefetch’ href=”www.google.com/analytics/analytics/”>
<link rel=’preconnect dns-prefetch’ href=”developers.google.com/speed/libraries/”>
<link rel=’preconnect dns-prefetch’ href=”developers.google.com/apis-explorer/#p”>
<link rel=’preconnect dns-prefetch’ href=”www.bootstrapcdn.com/”>
<link rel=’preconnect dns-prefetch’ href=”marketingplatform.google.com/about/tag-manager/”>
<link rel=’preconnect dns-prefetch’ href=”fontawesome.com/”>
<link rel=’preconnect dns-prefetch’ href=”www.doubleclickbygoogle.com/”>

PageSpeed Insights の他の項目の改善についてはコチラ

関連記事

サーチコンソールを見てたら「CLS に関する問題: 0.1 超(モバイル)」という警告が出てたんだけど、、 なんとなく遅いっていうのは分かるけど、、結局どうすればいいの? 今回は、「CLS に関する問題: 0.1 超(モバイル[…]

関連記事

PageSpeed Insights の「次世代フォーマットでの画像の配信」の改善方法について解説します。 サイトの読込みスピードが遅いから次世代の新しいフォーマットを使って早くしてねということですね。 JPEG 2000、J[…]