Google Page SpeedまたはYSlowを実行するたびに、Google AdsenseとGoogle Analyticsの使用に起因する最適化の多くが提案されました。
たとえば、YSlowは「9つの外部Javascriptスクリプト」があると言っています-私は自分のサイトに1つしか持っていないので、残りは明らかにAdSenseまたは分析からのものです。また、「DNSルックアップの削減」の下に、これらのドメインがリストされます。
pagead2.googlesyndication.com
googleads.g.doubleclick.net
www.google-analytics.com
altfarm.mediaplex.com
img-cdn.mediaplex.com
eu.bid.invitemedia.com
ad.doubleclick.net s0.2mdn.net
pixel.invitemedia.com adadvisor.net
これらを減らしたり、速度を改善するためにできることはありますか?
Googleアナリティクスは、 非同期 を読み込むように設定できます。これにより、状況を改善できます。現在、AdSense用の同様のスクリプトを持っているようには見えません。
Google Analyticsを非同期でロードすることは良いスタートです。さらに、ページの読み込みにかかる時間はどれくらいですか?ページの所要時間が2秒未満の場合、ページの最適化に時間をかけたくない場合があります。
他の場所からの読み込みが遅くなることが懸念される場合は、 http://www.webpagetest.org/ をチェックして、世界中の他の場所や他のインターネット速度に対してページをテストしてください。このページには、サイトの各チャンクのロードにかかる時間も表示されます。
時間とエネルギーのコストが高すぎるため、「完全な速度」でページをロードすることはおそらく役に立たないことを覚えておく必要があります。 Googleによると、2秒未満でページを取得できる場合、ウェブサイトの上位20%にいることになり、おそらくそれで十分でしょう。そうでない場合は、ページ速度を上げることができる他の場所を探します。いくつかの小さなものを修正すると、サイトが十分に速くなることがあります。
それを置く最良の方法は、ぶら下がっている果物を選ぶことだと思います。GoogleAdsenseはそれほどぶら下がっていません。分析は、非同期にすることで修正するのに十分簡単であり、修正する必要があります。
非同期Googleアナリティクススクリプト が気に入ったら、Mathias Bynensの最適化を確認してください here 。明らかに、Googleがスニペットを大幅に変更するかどうかを最新に保つ必要がありますが、現時点では、彼の最適化により、同じスクリプトのGoogleのバージョンよりも 40%高速化 (私にとって)が得られます。
一般に、これらの広告スクリプトの多くは意図的に「キャッシュ無効化」されているため、ビューを登録するたびにサーバーにヒットが発生します。
残念ながら、Adsenseを使用するだけでは、外部のJavaScriptの多くを利用できますが、広告ゾーンの数を減らす以外にできることはほとんどありません(TOSでは1ページあたり3つしか許可されません)。 AdSenseを実行していません。
Document.writeを実行し、必要なコードを出力したゾーンごとに、独自のホストJavaScriptでGoogle広告javascriptをラップしてみてください。これにより、ボディがロードされた後にロードされるため、ページが最初にロードされることになると確信しています。
ほんの一点-読み込み速度を改善するGoogleアナリティクスコードの新しいバージョンがあります-それに変更する価値があるかもしれません。
これが問題である場合、できることは、これらのスクリプトなしでページをロードし、ページが完全にロードされた後、ajaxを使用してスクリプトをページにインポートすることです
たとえば、次のように、ページに空のdivがあるとします。
<div id="adsenseBanner"></div>
そして、次のようにjavascriptを追加します。
$(document).ready(function(){
$('#adsenseBanner').append('<script>alert("this");</script>')
});
JavaScriptアラートを追加して、実行されていることを確認できるようにしましたが、もちろん、ロードする必要のあるスクリプトに置き換えます。
この方法で、これらの外部リソースがページのロードを遅くしないことを確実にすることができます...余分なスクリプトをロードするという代償を払って。