Googleアドセンスの広告表示をちょっとだけ高速化

Adsenseロゴ

自分のブログの速さを気にしていると、ほかの人のブログの速さも気になってしまいます。

はてなブログを高速化するための4つのことなどで、ある程度、ブログの表示速度を改善できたとは思うのですが、それでも、Googleアドセンス広告の表示の影響は大きいかと。

アドセンス広告を複数貼り付けているので、読み込みに無駄がないか、広告コードを確認してみました。

adsbygoogle.jsはページに1つだけ

adsbygoogle.js」は、ページに1つだけあればいいので、Googleアドセンスの広告を貼り付けるときのちょっとしたことで、ブログのhead部分に「adsbygoogle.js」を入力、ほかの広告コードからはすべて削除して、読み込みの無駄を減らしました。

<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-123456789"
data-ad-slot="123456789"></ins>
<script>(adsbygoogle = window.adsbygoogle || []).push({});</script>

DNSプリフェッチで先読み

さらに、Googleアドセンスに関係するドメインをDNSプリフェッチで先読みしました。

(設定→詳細設定→「<head>要素にメタデータを追加」にコードを入力)

<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"/>

参考になるブログ・Webサイト
QWERTY.WORK - AdSenseの表示を高速化するために「DNS Prefetch」であらかじめ先読みする

(adsbygoogle = ~ )はまとめてpush

HeyG Blog - Google Adsenseが表示されない問題を解決してみたを参考に、「<script>(adsbygoogle = ~ )</script>」を広告コードからすべて削除して、ブログのフッタに以下のコードを入力、複数のアドセンス広告(class名がadsbygoogle)にまとめて広告データを追加するようにしました。

(デザイン→カスタマイズ→フッタにコードを入力)

<script>
document.addEventListener('DOMContentLoaded', function() {
    $('.adsbygoogle').each(function() {
        (adsbygoogle = window.adsbygoogle || []).push({});
    });
});
</script>

- 追記 -
Googleアドセンスの広告データをあとでまとめて追加(push)する

- 追記 -
Googleアドセンスのアカウントが非承認(無効化)されたのでお知らせするとともに、この項目を参考にするとアカウントが無効にされる恐れがありますのでご注意ください!

まとめ

ちょっとは速くなったかなという程度で、無理にいろいろやらなくてもいい感じです...。