技術情報

ヒートマップのスクリーンショットに、完全にレンダリングされたページが表示されない(画像やコンテンツがない)のはなぜですか?

 

ヒートマップのスクリーンショットは、ブラウザによってページが正式に読み込まれたときに撮影されます。場合によっては、すべてのコンポーネントが実際に読み込まれる前に、ブラウザがページを完全に読み込んでレンダリングしたとみなすことがあります。例えば、ページのロード時間を短縮するために、特定の画像やその他のリソースを遅延ロードする場合などです。つまり、ブラウザによってトリガーされるロードイベントは信頼できないため、ヒートマップで完全にレンダリングされたスクリーンショットを見るためには、サイトがロードされたとみなされるタイミングを手動でMatomo (Piwik)に伝える必要があります。これを行うには、以下の手順に従ってください:

注:プラグインバージョン5.1.0のリリースにより、ページのスナップショットを手動で取得できるようになりました。こちらのよくあるご質問をご覧ください。

1) トラッキングコードでヒートマップとセッションの記録を無効にする:

_paq.push(['HeatmapSessionRecording::disable']);

2) コード内でページが完全にレンダリングされたとみなされたら、すぐにヒートマップとセッションの記録を有効にする:

_paq.push(['HeatmapSessionRecording::enable']); 

ヒートマップとセッションの記録を手動で無効にした場合、Matomo はセッションの記録を再び有効にしてから(ページが完全に読み込まれてから)開始することに注意してください。その結果、ページが完全に読み込まれる前に発生したインタラクションは記録されません。一般的に、訪問者がより良いユーザーエクスペリエンスを得られ、この問題をあまり経験しないように、ページの読み込みを速くすることをお勧めします。

正しくレンダリングされたヒートマップサンプルを取得する別の方法として、既存のヒートマップサンプルを削除し、ページがブラウザに完全に読み込まれた状態で、Matomoのトラッキングコードをコピーし、ブラウザの開発者ツールコンソールに貼り付け、エンターキーを押してトラッキングコードを実行します。これで、新しいヒートマップサンプルが収集されるはずです。