2016-10-10 10 views
0

analytics.jsを使用してページヒットとトランザクションをトラッキングしています。現在、私たちのトラッキングコードは次のようになります。 - ユーザーIDと国電子商取引でカスタムディメンション(ユーザースコープ)を送信できますか?

ga('create', 'UA-XXX-X', 'auto', {'allowLinker': true}); 
//add content grouping here if required 
ga('send', 'pageview'); 

if(receiptPage){ 
    //we call server here ONLY on the receipt page. 
    //the results are loaded into the addTransaction and addItem 

    ga('require', 'ecommerce', 'ecommerce.js'); 
    ga('ecommerce:addTransaction', { 
    //we set the following fields here: 
    //id, affiliation, revenue, shipping, tax, currency 
    }); 

    //for each item in the order we run: 
    ga('ecommerce:addItem', { 
    //we set the following fields here: 
    //id, name, sku, category, price, quantity, currency 
    }); 

    ga('ecommerce:send'); 
} 

当社は、ユーザーのスコープに2つのカスタム・ディメンションフィールドを追加したいと思います。サーバー上のこれらのパラメータにアクセスでき、if(receiptPage)宣言の中に簡単に含めることができます。カスタムディメンションパラメータを追加する場所とコレクションをトリガーする方法を正確に把握する必要があります。 googleによると

:他のタイプのデータとは異なり

は、カスタムディメンションや指標が他のヒットにパラメータとして付加 解析に送られ、ページビュー、 イベント、またはeコマース取引のように。

ただし、ページビューとイベントを送信する例のみを示します。トランザクションヒットでカスタムディメンションパラメータのコレクションを表示する例は見つかりませんでした。

質問は次のとおりです。 Can ga( 'ecommerce:send');カスタムディメンションを収集しますか?

ga('create', 'UA-XXX-X', 'auto', {'allowLinker': true}); 
ga('send', 'pageview'); 
if(receiptPage){ 
    ga('require', 'ecommerce', 'ecommerce.js'); 
    ga('ecommerce:addTransaction', {/*somecode*/}); 
    ga('ecommerce:addItem', {/*somecode*/}); 

    ga('set', 'dimension1', 'user555'); 
    ga('set', 'dimension2', 'Germany'); 

    ga('ecommerce:send'); 
} 

または、eコマースは、カスタムディメンション・データを収集することができない場合、我々はif文の下にページビューの送信を移動する必要があります:私たちが行うことができ、その場合には 。 eコマースコレクションの後に呼び出すと問題が発生する可能性がありますか? :

ga('create', 'UA-XXX-X', 'auto', {'allowLinker': true}); 
if(receiptPage){ 
    ga('require', 'ecommerce', 'ecommerce.js'); 
    ga('ecommerce:addTransaction', {/*somecode*/}); 
    ga('ecommerce:addItem', {/*somecode*/}); 

    ga('set', 'dimension1', 'user555'); 
    ga('set', 'dimension2', 'Germany'); 

    ga('ecommerce:send'); 
} 
ga('send', 'pageview'); 

どのソリューションを選択する必要がありますか?実験するのは敏感な場所なので、試行錯誤で解決するのではなく、むしろ確信しています。

+2

あなたのライブアカウントに影響を与えることなく、余分なプロパティを作成してダミーコールを送信することはありません。データが表示されるまで数時間かかりますが、これは通常、特定のコードがユースケースに対応しているかどうかを判断する最も信頼できる方法です。 –

+1

そして、@ EikePierstorffのコメントに追加すると、問題のコードでダミーのhtmlページを作成し、ライブサイトにまったく影響を与えずにGAをチェックすることさえできます。ステージングサイトを持つことは、Web開発にとって不可欠です。 – nyuen

答えて

1

両方のソリューションを使用できます。 Googleアナリティクスサーバーへのリクエストが2回発生し、コードで定義したすべてのデータが送信されます。

第1の解決方法: 第2の要求には「トランザクション」タイプが定義されており、「ga( 'ecommerce:send');」の前の行に定義されているすべての値が含まれます。

2番目の解決策: すべてのデータを送信するにはページビューのリクエストで十分であり、ga(「eコマース:送信」)は必要ありませんが、100%確実ではありません。

関連する問題