ニュース

より速いウェブサイトのパフォーマンスのためにPiwikトラッキングコードを埋め込むさまざまな方法

多くの研究は、パフォーマンスが重要であることを示しています。 ウェブサイトの読み込みに時間がかかると、100秒ごとに売上高で約0.1%〜1%を失う可能性があります。また、Googleが検索結果ページのランキング要素としてページのスピードを判断するため、重要です。 InnoCraftでは、お客様がPiwikとの統合を最適化し、ニーズに合わせてさまざまな方法でトラッキングコードを組み込むことを推奨しています。 トラッキングコードを埋め込む最良の方法は、ウェブサイト、達成したいこと、トラッキングがあなたにとってどれほど重要かによって異なります。

この技術的なブログ記事は主に、ウェブサイトの読み込み時間を改善することに重点を置いています。 たとえば、Googleは通常、ページの読み込みに要した時間を測定するなど、重要な指標です。 したがって、多くの企業は、できるだけ早くページのロード・イベントを取得したいと考えています。

トラッキングコードを埋め込む通常の方法

デフォルトでは、Piwikはウェブサイトのヘッダーまたはフッターに埋め込まれています。 これは合理的なデフォルトです。 非同期でロードされ、遅延している間も、onloadイベントは遅延します。 Piwikのパフォーマンス、ウェブサイトの読み込み速度、ウェブサイトのリソースの埋め込み方法、その他の要素を考慮する必要があります。 そのうちの3つを以下で紹介します。

ロードイベントの後にトラッカーを埋め込む

サーバーの速度が遅く、ロードイベントが遅れている場合は、次のようにしてウェブサイトを読み込んだ後にのみトラッキングコードを読み込むことができます。

var _paq = _paq || [];
_paq.push(["trackPageView"]);
_paq.push(["enableLinkTracking"]);

function embedTrackingCode() {
   var u="https://your.piwik.domain/";
   _paq.push(["setTrackerUrl", u+"piwik.php"]);
   _paq.push(["setSiteId", "1"]);

   var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript";
   g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s);    
}

if (window.addEventListener) { 
    window.addEventListener("load", embedTrackingCode, false); 
} else if (window.attachEvent) { 
    window.attachEvent("onload",embedTrackingCode); 
} else {
    embedTrackingCode();
}

欠点は、ウェブサイトが完全にロードされるまでにビジターが離脱してしまったため、すべてのビジターを追跡できないことです。 特に、JavaScriptが重いウェブサイトを使用している場合や、ウェブサイト全体の読み込みに時間がかかる場合。 ブラウザを介してロード・イベントを正しく検出するには、jQueryのようなライブラリを使用することができます。

トラッキングを遅らせる

もう1つの方法は、次のようにウェブサイトの最後に少し遅れてトラッキングを読み込むことです:

setTimeout(function () {
    embedTrackingCode();
}, 5);

この方法では、トラッキングスクリプトでもほとんどのビジターを追跡しますが、残りのウェブサイトの読み込み速度はデフォルトでは(少なくとも知覚されるほど)低下することはありません。 場合によっては、「読み込み時間」を見てもパフォーマンスが向上しますが、それはWebサイトによって異なります。

JavaScriptトラッカーをまったく読み込まない

Piwikを使用すると、トラッキングコードをWebサイトに埋め込まず、代わりにPiwik Log Analyticsを使用してWebサーバーログからレポートを生成することもできます。 これはうまくいきますが、一部のデータは、JavaScriptを使用してキャプチャできるデバイス解像度のように利用できない場合があります。 メリットとしては、このソリューションは広告ブロッカーまたはトラッキングブロッカーを使用するユーザーをキャプチャします。

質問ですか?

ウェブサイトのパフォーマンスだけでなく、知覚のパフォーマンスに影響を与える意味を確認するさまざまな方法をテストすることを勧めます。ご質問があれば、お気軽にご連絡ください。