0

ここで、Google アナリティクス トラッキング コードを使用すると、キャッチ 22 の状況が発生します。送信時にデータを API に送信するフォームがあります。最近、Google アナリティクス トラッキング コードを使用して、この送信を e コマース トランザクションとして記録することにしました。アプリケーションが送信され、API からデータが返されるまで、トランザクションは記録されません。これは、API からのデータがトランザクションに含まれるためです。

問題は、フォームがデータベースにデータを自動保存するため、フォームが完全に入力または送信されていない場合、自動化された PHP スクリプトが後で API に送信するためにデータを取得できることです。

今キャッチ22

自動化されたphpスクリプトを介して送信されるデータに対してこれを実装する方法を見つける必要があります。

うまくいかない3つの解決策

  1. サーバー側のトランザクションを ga に送信します。これは可能ですが、このシナリオでは、Google アナリティクスがクライアントから収集するすべてのデータがサーバーから取得されるため、そもそも Google アナリティクスを使用する目的がすべてなくなります。

  2. フォームが送信される前にトランザクションを送信する。トランザクションで送信するには、API からデータを取得する必要があることに注意してください。

  3. サーバー側でトランザクションを Google アナリティクスに送信するときにヘッダーに含めるために、クライアントに関する情報をデータベースに保存します。Google アナリティクスがクライアントに関して収集するすべての情報、IP アドレスをスプーフィングする方法、およびこのようなソリューションを構築する時間があれば、このようなことはおそらくうまくいくでしょう。

4

4 に答える 4

1

オプション3の場合、Urchinトラッキングメソッドを使用して、Google Analyticsに送信されるデータをシミュレートし、代わりにローカルファイルに送信して、リクエスト情報を取得し、完了したらGoogleに送信することができます。

したがって、JSコードは次のようになります。

var pageTracker = _gat._getTracker("UA-XXXX-1");
pageTracker._setLocalServerMode(); //this disables external GA calls. 
pageTracker._setLocalGifPath("/foo/bar.gif");
pageTracker._trackPageview(); //or your transaction calls

これが通常の__utm.gifリクエストに対して行うURLリクエストを見ると、欠落している唯一の重要なことはutmcc、GoogleアナリティクスCookieのURLエンコードされたバージョンであるように見えるパラメータであるように思われます。これも(document.cookieから、またはサーバー側で)追跡して、GoogleAnalyticsリクエストを行うときにクエリ文字列に追加できるようにする必要があります。これは、セッションとソース情報が保存される場所であるため、重要です。そうしないと、追跡にコンテキストがありません。

次に、サーバー上で、bar.gifをbar.phpに書き換えることができます。これにより、Googleサーバーに送信するクエリ文字列とリクエストヘッダーがキャプチャされます(最も重要なのは、クエリ文字列とユーザーエージェント文字列とIPアドレスです)。 ; 、次に必要なデータを追加し、結果のクエリ文字列を取得して、ブラウザなどのなりすましヘッダーを使用して、そのURLのGoogleAnalyticsバージョンにcURLリクエストを送信します。

于 2011-01-20T17:12:16.157 に答える
1

API が必要なデータのビットを返した後に、非同期トラッキング コードを使用してデータを送信できない限り、賢明な方法はありません。上記の方法はまったく問題ありませんが、IP は着信通話から読み取られ、再びサーバーになるため、IP を Google にスプーフィングする必要があります。

私の経験では、Google Analytics はこのような場合 (サーバー側の追跡) には適切なツールではありません。

于 2011-01-24T00:05:51.360 に答える
1

自動保存には AJAX を使用し、最終更新には SUBMIT を使用します。

于 2011-01-13T16:46:22.480 に答える
0

#1027660には、サーバーサイドから Google アナリティクスのヒットを送信することに関する質問があり、サーバーサイドのクリックを生成する方法についていくつかの提案があります。

それはあなたの「この方法ではできない#3」に反しますが、そのルールを破る価値があるほど単純に見えるかもしれません.

幸運を!

于 2011-09-05T14:48:51.530 に答える