このドキュメントでは、アナリティクス ガジェットをトラッキングする新しい Gadget API の使用方法について説明します。この API では、ガジェットに関するアナリティクス レポートの統計を収集するためのデータモデルと掲載結果のトラッキングが改善されています。
準備
Google アナリティクスでは、アカウントに追加された固有のウェブサイト ドメインまたはサブドメインが個別のビュー(旧プロファイル)でトラッキングされ、それぞれに個別の「ドメイン ID」が割り当てられます。各ガジェットは、gmodules.com
ホストサイト上の独自のサブドメインで動作するため、作成した各ガジェットを、固有のビュー(プロファイル)と一意のドメイン ID でトラッキングする必要があります。
これには、Google アナリティクス で固有の ID を生成する方法が最も簡単です。
- ご利用を開始するには、Google アナリティクスにログインするか、Google アナリティクス アカウントを作成します。
- 新規ユーザーには [新しいアカウントの作成] ページが表示されます。
- 既存のユーザーは [アナリティクス設定] ページで [ウェブサイトのビューを追加] をクリックします(必ず新しいドメインを選択してください)。
- いずれかのページで、有効なウェブサイト URL を入力します。
- ウェブサイトの URL は Google アナリティクス ソフトウェアによってドメイン ID とペアにされる文字列にすぎないため、この URL には、偽造されたものか実際のものかにかかわらず、有効なウェブサイトの URL の文字列を指定できます。ウェブページにはトラッキング コードをインストールしません。また、ウェブサイト ページにアクセスする必要もありません。
- ボタンをクリックして次の画面に進みます。
- トラッキング コード スニペットが表示されたら、一意のドメイン ID をスクラッチ パッドにコピーします。自動的に生成されたコード スニペットには、
UA-123456-1
の形式でこのドメイン ID が含まれます。 - [Finish] ボタンをクリックします。
- ウェブサイトの URL の名前がビュー(プロファイル)リストに表示されます。また、ビュー(旧プロファイル)の [編集] リンクをクリックして、もう一度 [編集] をクリックすると、ビュー(旧プロファイル)の名前を意味のあるものに変更することもできます。
- 生成されたドメイン ID をガジェット トラッキング コードで使用します。
- アナリティクス ドメイン ID の形式は次のとおりです。
UA-123456-1
ガジェットのトラッキング
ガジェットをトラッキングするためには、ガジェット コードで次の 3 つの操作を追加で行う必要があります。
- 機能を有効にする
- トラッカー オブジェクトを作成する。
- 2 つのメソッドのいずれかを使用してガジェットをトラッキングする。
次のガジェット コード サンプルは、追加する各コードを示しています。このサンプル ファイルを利用して、独自のガジェットを作成することもできます。
<?xml version="1.0" encoding="UTF-8" ?>
<Module>
<ModulePrefs title="Analytics Test">
<!-- Sets the feature -->
<Require feature="com.google.gadgets.analytics" />
<Require feature="setprefs" />
</ModulePrefs>
<UserPref
name="counter"
datatype="hidden"
default_value="0" />
<Content type="html">
<![CDATA[
<script> // Track this gadget using Google Analytics. // Creates a tracking object and uses reportPageview method to call gadget view var ga = new _IG_GA("UA-00000-1"); ga.reportPageview('/view/counterGadget'); // Suppose, for example, you have a gadget with two counter buttons. // You can track interactions with those counters via Analytics. // Increment value of "counter" user preference function incrementCounter() { var count = prefs.getInt("counter"); prefs.set("counter", count + 1); // Tracks button click as an event ga.reportEvent("Counter Gadget", "Increment", "Button", 0); } // Reset value of "counter" userpref to 0 function resetCounter(){ prefs.set("counter", 0); // Tracks button click as an event ga.reportEvent("Counter Gadget", "Reset", "Button", 0); } </script> <form name="counter"> <input type=button value="Reset" name="reset" onClick="resetCounter()"> <input type=button value="Count" name="count" onClick="incrementCounter()"> </form> ]]> </Content> </Module>
1. 機能を有効にする
まず、機能の名前空間を使用してアナリティクス ライブラリをインポートし、機能を有効にします。
<Require feature="com.google.gadgets.analytics" />
2. トラッカー オブジェクトを作成する
アナリティクスのトラッキング API は、ga.js
トラッキング コードと同じオブジェクト指向モデルに準拠しています。ガジェットをトラッキングする前に、トラッカー オブジェクトのインスタンスを作成してください。
var ga = new _IG_GA("UA-123456-1");
ここに上記の手順で生成したドメイン ID を挿入します。
トラッキング オブジェクトの呼び出しに失敗しないようにするには、末尾に単一の数値を含む完全なドメイン ID を使用する必要があります。
3. ガジェットをトラッキングする
Gadget API には、ガジェットのインタラクションをトラッキングするための 2 つのメソッドが用意されています。
- 仮想 URL メソッド
-
ga.reportPageview(path);
このメソッドでは、ガジェットの統計情報を特別なページビューとしてトラッキングします。これは以前のバージョンのアナリティクス Gadget API で使用されていたのと同じメソッドです。このメソッドを使用して、既存のアナリティクス レポートのレイアウトに影響を与えずに既存のガジェット トラッキング コードを更新できます。ガジェットのレポートデータは、ウェブページのレポートデータと同じように表示されます。
仮想 URL メソッドを使用してガジェットのインタラクションをトラッキングする場合、各呼び出しはユーザーがメソッドにパラメータとして入力する文字列のページ リクエストとして保存されます。このメソッドを利用してテスト用の URL パスを渡すと、ウェブサイト ページのレポートと同じようにガジェットのレポートを Google アナリティクスの管理画面に表示できます。たとえば、別々のパスを使用して、ガジェットのビューとガジェットのインタラクションの両方をトラッキングすることができます。
ga.reportPageview('/view/counterGadget'); ga.reportPageview('/click/increment'); ga.reportPageview('/click/reset');
- イベント トラッキング メソッド
-
ga.reportEvent(name, action, [[]label], [[]value]);
このメソッドは新しいアナリティクス Gadget API でのみ使用できます。このメソッドを使用して、ガジェットに対するユーザーの操作とは別に、ページビュー(ガジェットの表示など)をトラッキングできます。
注: 現時点では、イベント トラッキングは限定ベータ版で提供されています。イベント トラッキングにアクセスできない場合は、仮想 URL メソッドを使用してください。
イベント メソッドでは、ガジェット トラッキングで使用できる別のモデルが提供されています。まず、イベント呼び出しはページビュー呼び出しとは別に計算され、結果データは Google アナリティクスのコンテンツ レポートの別々の場所にそれぞれ表示されます。したがって、ユーザー操作によってガジェットのビューの総数を増やしてしまうことなく、ガジェットのユーザー操作とガジェットのビューを別々にトラッキングできます。次に、このメソッドでは、ガジェットでのユーザー操作を分析するために設計された構造を持つイベント トラッキング モデルが使用されます。このモデルでは、label と value はオプションのパラメータです。
カウンターの例では、イベント メソッドを使用して、トリガーされたガジェット機能をトラッキングできます。また、コントロールのタイプも渡すことができます(どちらの場合もボタンです)。
ga.reportEvent("Counter Gadget", "Increment", "Button"); ga.reportEvent("Counter Gadget", "Reset", "Button");
これは非常に簡単な例ですが、イベント トラッキング モデルは柔軟性の高い構造を持っているため、ガジェットに固有のトラッキング要件を使用するように改良することもできます。詳細については、トラッキング イベントのドキュメントをご覧ください。
トラッキング メソッド
現在、アナリティクス機能には次のメソッドが用意されています。その使用方法については上記で説明しています。
- reportPageview()
- コンテンツ レポートを正しく作成するには文字列が必要です。この文字列は通常、レポートの目的に応じて定義するパスの形式で指定します。このメソッドに渡される値は、
utmp
変数を介してGIF
リクエストで送信されます。このメソッドを使って、ガジェットの読み込みと操作をトラッキングします。ga.reportPageview("/view/gadgetName");
パラメータ
String
path
この要素の仮想 URL に指定するパス。
- reportEvent()
- トラッキングしたデータをイベント トラッキング レポートに正しく挿入するには、ガジェット名とアクション パラメータ名が必要です。他のパラメータは省略可能です。このメソッドを介して渡される値は、
utme
変数のGIF
リクエストで送信されます。parameters
String
name
必須。イベント トラッキング レポートの最上位で使用される文字列。たとえば多数のガジェット要素のインタラクションをトラッキングする場合、ガジェットのすべてのインタラクション トラッキングが Google アナリティクス レポートの同じセクションにまとめられるように、このパラメータにガジェット自体の名前を使用します。
String
action
必須。イベント トラッキング レポートでガジェットのインタラクションをさらにセグメント化するための文字列。詳しくは、イベントのトラッキングに関するドキュメントをご覧ください。
String
label
省略可。ガジェットの 2 番目のセグメントとして使用できる文字列。
Int
value
省略可。ガジェット インタラクションの値として指定できる数値。この数値はメソッドの呼び出しごとに集計されます。
使用に際しての考慮事項
Google アナリティクス Gadget API の使用に関する考慮事項は次のとおりです。
- サポートされているコンテナ
-
Google アナリティクス ガジェット API では、次のようなさまざまな種類のコンテナがサポートされています(ただしこれらに限定されません)。
- iGoogle
- Open Syndicatio
- Open Social
- ガジェット
- サポートされていないガジェットの種類
- Google アナリティクス ガジェット API は、以下のタイプのガジェットをサポートしていません。
- インライン ガジェット
(type=html-inline)
- マップレット
- URL タイプのガジェット
(type-url)
- Google AdSense のガジェット広告
- インライン ガジェット
- ドメインに関する考慮事項
- ガジェットにアナリティクス機能が必要な場合、ガジェットは
<subdomain>.gmodules.com
にリダイレクトされます。ここで、<subdomain>
は一意のランダムなサブドメインです。したがって、ガジェットのすべてのコンテンツはサブドメインの下に表示されます例:3nvma227-a.gmodules.com
。また、すべての Google アナリティクスのトラッキング Cookie は、この固有のサブドメインに設定されます。このため、マップレットはアナリティクスのトラッキング機能でサポートされていません。Flash コンテンツにトラッキング機能への特別なアクセスを許可する必要があります(次の項目をご覧ください)。 - Flash コンテンツを使用したガジェット
- Flash コンテンツを使用するガジェットでは、
allowScriptAccess
パラメータを常時に設定して、Flash URL とガジェットの URL 間の通信を有効にする必要があります。_IG_EmbedFlash("example.swf", "wrapper", {allowScriptAccess: "always"});
おすすめの方法
仮想 URL メソッドの最適な使用方法
ガジェットのイベント トラッキング メソッドにアクセスできない場合は、仮想 URL メソッドを使用したガジェットのトラッキングについての下記の推奨手順に従ってください。
- ガジェット読み込みを個別にセグメント化する。
- ガジェットの読み込み時に
ga.reportPageview()
を呼び出して、ガジェットのインタラクションの指標とは別に、ガジェットの読み込みとビューの統計情報をセグメント化するパスを指定できます。これにより、ガジェットのインタラクションとは別の「ディレクトリ」内に、ガジェットのコンテンツ レポート データが保存され、ガジェット自体のインタラクション数とは別に全体のビューを表示できます。たとえば、次のコード スニペットをガジェットで使用すると、ガジェットの読み込みに関するすべての統計情報を表示できます。ga.reportPageview('/view/gadgetName');
- 異なるインタラクション タイプをセグメント化する。
- さまざまなユーザー インタラクションをセグメント化するパスを使用して
ga.reportPageview()
を呼び出します。この方法では、インタラクション データをトラッキングするガジェットのリンク、ガジェットのボタン、またはその他のウィジェットについて、異なるコンテンツ レポートを取得できます。例:ga.reportPageview('/link/click');
ga.reportPageview('/link/submit');
イベント トラッキング メソッドの使用
Google アナリティクス レポートのイベント トラッキング機能にアクセスできる場合は、オブジェクトのトラッキングを最大限に活用するための非常に柔軟なデータモデルを利用できます。次のヒントを参考にしてください。
ga.reportPageview()
を使用してガジェットの表示やインプレッションをトラッキングし、ga.reportEvent()
を使用してガジェットのインタラクションをトラッキングします。- ガジェット ビューはページデータの [コンテンツ] セクションに表示され、ガジェットのインタラクションはコンテンツ レポートの [イベント] セクションに表示されます。
document.referrer
をパラメータとして使用して、ガジェットが配置されている場所を確認します。- ガジェットでは通常、
document.referrer
がコンテナのページ URL であるため、ga.reportEvent()
メソッドのラベル パラメータとして渡すことができます。
var containerPage = document.referrer; ga.reportEvent("Counter Gadget", "Increment", containerPage, 0);
トラブルシューティング
ガジェットの GIF リクエスト文字列を分析するサードパーティ ツールを使用すると、ご希望の方法で Google アナリティクス レポートにデータが送信されることを確認できます。ガジェットを適切にホストしてテストページで実行したら、次のように GIF リクエスト文字列を分析します。
- ページビュー メソッド
- GIF リクエスト パラメータで
utmp
変数を探します。この変数に関連する情報は、ガジェットのパスとして Google アナリティクス レポートに送信されます。 - イベント トラッキング メソッド
- GIF リクエスト パラメータで utme 変数を探します。この情報は
5(object*action*label)(value)
の形式にする必要があります。
トラッキング コードのトラブルシューティングに関する詳細については、GATC トラブルシューティング ガイドをご覧ください。