トラッキングコードAPIの概要

 
HubSpotトラッキングコードを使用すると、ページビューのトラッキングに加えて、訪問者の特定やイベントのトラッキングが可能になります。また、(ページを再読み込みすることなく)ページビューを手動でトラッキングすることも可能になります。トラッキングコードAPIを使用すると、HubSpotでイベントを動的に作成したり、イベントデータをトラッキングしたりできるようになります。

関数呼び出しは、_hsq配列に含めます。

var _hsq = window._hsq = window._hsq || [];
_hsq.push(["method", "arg1"]);

トラッキングコードの読み込み時には_hsq配列にあるものすべてが処理されます。コードの読み込み前にidentify呼び出しを配列に含めることで、最初のtrackPageView呼び出しによって識別情報がプッシュされます。

trackPageViewは、トラッキングコード読み込み時に自動的に呼び出されます。ページ読み込みの前にはtrackPageView呼び出しを_hsqに含めないでください。


識別の仕組み

HubSpotのアナリティクスツールでは、2組のデータ、つまりusertoken(訪問者のブラウザーのhubspotutkcookieに保存される)とEメールアドレスを使用して個別のレコードが識別されます。HubSpotトラッキングコードにより訪問者のアクション(ページビューなど)がトラッキングされる際、アクションはusertokenに自動的に関連付けられます。トラッキングコードAPIを使用してEメールアドレスで訪問者を特定する場合、アナリティクスシステムによってEメールアドレスがusertokenと結び付けられることで、既存のコンタクトレコードの更新や新規作成を行える仕組みです。HubSpotでは、コンタクトレコードの作成または更新の処理に使用されるEメールアドレスの検証が行われます。usertokenに関連付けられているアナリティクスデータ(ページビューやオリジナルソースなど)が、コンタクトレコードに表示されます。

この点を考慮して、identifyメソッドの使用はページの閲覧者(Eメールアドレスなど)が把握できている場合に限定してください。不明な訪問者のためのプレースホルダーEメールを使用すると、プレースホルダーEメールによるコンタクトレコードが作成され、このレコードに訪問者のusertokencookieが関連付けられます。つまり、すべての不明な訪問者が1つのプレースホルダーコンタクトに関連付けられることになります。

identify機能で設定されるのは、トラッカーに含まれるIDだけという点に注意してください。個別にtrackPageViewまたはtrackEvent呼び出しを行うまでは、識別情報がHubSpotに渡されることはありません。

HTTP APIは、コンタクトレコードへのアナリティクスデータの関連付けには使用できません。ただし、URLの中でemail=パラメーターを使用して、Eメールアドレスが該当するコンタクトにイベントを関連付ける(または、Eメールアドレスが既存のレコードに含まれていない場合には新しいコンタクトを作成する)ことは可能です。

 


イベントをトラッキングする

:イベントは、Marketing Hub Enterpriseが含まれるアカウント上でのみ処理できます。

HubSpotレポートの中でイベントをトラッキングするには、trackEvent関数を使用します。イベントは、何らかのアクションの発生をトラッキングするために使用します。また、コンタクトレコードとイベントを結び付けることにより、コンタクトによるイベントのトリガーの有無やタイミングを確認できます。HubSpotではシンプルなイベントも設定できますが、イベントAPIを使用することで、ウェブサイト上の複雑なプロセスをトラッキングしたり、オフラインで発生するイベントをトラッキングしたりすることが可能です。

イベントAPIは2つありますが、どのように使い分ければよいでしょうか?

HubSpotにはイベントを扱う2つのAPIが用意されています。1つはトラッキングコードAPI(推奨API)のtrackEvent関数、もう1つはHTTP APIです。

trackEvent関数の場合は、ページにHubSpotトラッキングコードがインストールされている必要があります。この関数はHubSpotのアナリティクストラッキングと連動しているため、JavaScript APIによってトリガーされたイベントが訪問者のhubspotutk cookie(ユーザートークン)に自動的に関連付けられます。これにより、イベントをユーザートークンに関連付けられたコンタクトへと自動的に結び付けることができます(詳しくは後述のIDについてのセクションを参照)。

HubSpotトラッキングコードをインストールできない場面ではHTTP APIを使用できます。例えば、オフラインイベントのトラッキングに使用できます(その結果、CRMで処理されたデータに基づいてイベントをトリガーすることが可能になります)。HTTP APIではアナリティクスデータをコンタクトレコードに結び付けることはできませんが、Eメールアドレスによるコンタクトレコードの識別は可能なので、オフラインイベントをコンタクトレコードに結び付けることは可能です。

イベントのIDと名前:

イベントは、数値IDまたは文字列の名前を使用してトリガーできます。HubSpotで作成したイベント([レポート]>[アナリティクスツール]>[イベント])には自動的に数値IDが割り当てられ、該当するイベントのトリガーにこの数値IDが使用されます。IDは、HubSpot上でそのイベントを表示するURLから取得できます。イベントの作成に関する詳細はこちらのページを参照してください。

イベントは、イベントの文字列名を使用してトリガーすることもできます。名前を使用したときに該当する名前のイベントが存在しない場合、その名前の新しいイベントが動的に作成されます。その名前のイベントが動的にすでに作成済みの場合、新しいイベントは既存のもののカウントに加えられます。これにより、HubSpot上での手動操作を伴うことなく新しいイベントを動的に作成し続けることができます。

注:
  • HubSpotアプリで作成されたイベントは名前でトリガーすることはできません。IDによってのみ可能です。
  • 名前による動的なイベント作成は、1回限りの作成です。こうして作成されたイベントを削除した場合は、同じ名前のイベントを動的にトリガーしようとしても、新しいイベントは作成されません

単一ページアプリでトラッキングを行う:

HubSpotトラッキングコードでは、コードの初回読み込み時にページビューが記録されます。しかし、トラッキングコードを再読み込みすることなく単一ページアプリのページビューを手動でトラッキングすることもできます。現在のページを更新してトラッキングするには、setPath関数とtrackPageView関数を使用します。

JavaScript
<!-- 初回ページビューのパスを設定 -->
<script>
  var _hsq = window._hsq = window._hsq || [];
  _hsq.push(['setPath', '/home']);
</script>

<!-- HubSpotトラッキングコードを読み込む -->
<!-- ここからHubSpot埋め込みコード -->
  <script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/{hubId}.js">
</script>
<!-- ここまでHubSpot埋め込みコード -->

<!-- 以降のページビューのトラッキング -->
<script>
  var _hsq = window._hsq = window._hsq || [];
  _hsq.push(['setPath', '/about-us']);
  _hsq.push(['trackPageView']);
</script>

これらの関数の詳細は、setPathおよびtrackPageViewのドキュメントを参照してください。

同意バナーステータスを確認する

サイトでプライバシーに関する同意バナーを使用している場合、addPrivacyConsentListener関数を使用して訪問者の同意ステータスを確認できます。詳しくは、addPrivacyConsentListener関数のドキュメントを参照してください。

同意バナーCookieを削除する

GDPR関連の削除依頼などへの対応として訪問者の同意バナーCookieを削除する必要がある場合には、revokeCookieConsent関数を使用します。詳しくは、revokeCookieConsent関数のドキュメントを参照してください。

トラッキング不可Cookieを配置する

HubSpotトラッキングコードによるすべてのトラッキングを停止する必要がある場合は、トラッキング不可のCookieを訪問者のブラウザーに配置できます。詳しくは、doNotTrack関数のドキュメントを参照してください。


ページパスを設定する:hsq.push(['setPath', { path string }])

 

必須パラメーター 使い方 説明
パス 'setPath', { パス文字列 } 現在のページのパス。指定したパスは、表示されている現在のドメインとの相対パスとして処理されます。パスの先頭は常にスラッシュでなければなりません。詳しくは、サンプルを参照してください。
現在のページのパスを更新します。単一ページアプリで、ページ読み込み時に現在のページを更新する場合は、この関数を使用してください。この関数を使用してパスを更新した後、trackPageView関数を呼び出して現在のページの表示をトラッキングする必要があります。
注:
  • この関数呼び出しで更新できるのは、トラッカーに保存されているパスに限られます。更新後のページをトラッキングするには、trackPageView関数(英語)を呼び出す必要があります。
  • 単一ページアプリでは、トラッキングコードの読み込み前にsetPath呼び出しを_hsqに含めて、最初のページビューにおいてトラッキングされるURLを設定する必要があります(トラッキングコード読み込み時にはtrackPageView関数が自動的に呼び出されます)。例については、トラッキングコードの概要を参照してください。
  • この関数で更新できるのは、URLのパス部分のみです。ドメインは、読み込み時のページのURLに基づいて自動的に設定されます。この関数を使用して設定するパスは常に、検出されたドメインに対する相対パスとして処理されます。

 

 
JavaScript
使い方の例:

// この例では次のドメインを想定
// www.mydomain.com

// パスを「/」に設定し、ページをトラッキング
var _hsq = window._hsq = window._hsq || [];
_hsq.push(['setPath', '/']);
_hsq.push(['trackPageView']);
// その結果、次のビューが記録されます
// http://www.mydomain.com/

// パスを「/contact-us」に設定し、ページをトラッキング
var _hsq = window._hsq = window._hsq || [];
_hsq.push(['setPath', '/contact-us']);
_hsq.push(['trackPageView']);
// その結果、次のビューが記録されます
// http://www.mydomain.com/contact-us

// パスを「/blog/post?utm_campaign=my-campaign」に設定し、ページをトラッキング
var _hsq = window._hsq = window._hsq || [];
_hsq.push(['setPath', '/blog/post?utm_campaign=my-campaign']);
_hsq.push(['trackPageView']);
// その結果、次のビューが記録されます
// http://www.mydomain.com/blog/post?utm_campaign=my-campaign

// パスを「/#/about-us」に設定し、ページをトラッキング
var _hsq = window._hsq = window._hsq || [];
_hsq.push(['setPath', '/#/about-us']);
_hsq.push(['trackPageView']);
// その結果、次のビューが記録されます
// http://www.mydomain.com/#/about-us

ページビューをトラッキングする_hsq.push(['trackPageView']); 

ページビューをトラッキングします。この関数はページでトラッキングコードが読み込まれたときに呼び出されます。単一ページアプリの場合、この関数を手動で呼び出して以降のビューをトラッキングすることができます。

この関数には引数がありません。
トラッキングされるタイトルは次のパラメーターの現在の値になります: document.title

トラッキングされるURLは、次のいずれか1つに基づきます。

  • setPath関数(英語)を使用して設定したパス。単一ページアプリとして作成されたサイトの場合、トラッキング対象パスの設定方法としてこの関数が推奨されます。
  • setPathが一度も呼び出されていない場合、トラッキング対象URLは、訪問者のブラウザーからHubSpotのトラッキングサーバーに向けて行われたリクエスト内のReferer HTTPヘッダーになります(ブラウザーの履歴に変更を加えると、ヘッダーに使用される値は更新されます)。
    重要事項:
    • Refererヘッダーの利用で、URLフラグメント(URLの#より後の部分)はサポートされません。フラグメントはRefererヘッダーに含められないからです。 
    • setPath関数を使用してパスを設定するとRefererヘッダーのデータは変更されるため、 setPath を1度呼び出した後は、トラッキングを行うビューごとにsetPathを使用してパスを更新する必要があります。
JavaScript
使い方の例:

// setPathを使用して新しいページをトラッキング:
// トラッカーに格納されるパスを更新:
var _hsq = window._hsq = window._hsq || [];
_hsq.push(['setPath', '/#/new-page']);
// 新しいページのページビューをトラッキング
_hsq.push(['trackPageView']);


// ブラウザーの状態を更新して新しいページをトラッキング:
// ブラウザーの状態を更新し、「updated.html」をブラウザーのアドレスバーに表示
var stateObj = { foo: 'updated' };
history.pushState(stateObj, "updated page", "updated.html");
// 新しいページ「/updated.html」のページビューをトラッキング
var _hsq = window._hsq = window._hsq || [];
_hsq.push(['trackPageView']);
- この関数の使用については、注意点があります。
  • 前述のようにこの関数は、トラッキングコード読み込み時に自動的に呼び出されるため、その初回の呼び出しを回避する手段はありません。初回のページ読み込みの前または読み込み中にこの関数を手動で呼び出すと、トラッキング対象のビューが重複するおそれがあります。
  • 呼び出しは防止はできませんが、そのページについて記録されるURLを制御することは可能です。そのためには、トラッキングコードの読み込み前に、setPathの呼び出しを_hsqに含めます。その例については、トラッキングコードの概要をご覧ください。
  • 貴社のサイトが単一ページアプリの場合、ページに<link rel="canonical"> タグを含めないことをお勧めします。ブラウザーの履歴状態を更新するだけの場合、検出されるすべてのURLはlinkタグに設定されたcanonical URLによって変更されるため、ページ内で <link rel="canonical"> タグを使用する場合、setPath関数を使用して新しいページのパスを更新する必要があります。

訪問者を識別する:_hsq.push(["identify", { {identity details} }]);

 

このエンドポイントは、サイトへの訪問者を識別するために使用します。固有の識別子としてEメールアドレスが使用されます。Eメールアドレスに対応するコンタクトレコードがある場合は、そのレコードが更新されます。ない場合は、新しいコンタクトレコードが作成されます。いずれの場合も、この訪問者について収集されるアナリティクスデータがコンタクトレコードに関連付けられます。

このエンドポイントの使用例:Eメールアドレスに基づいてコンタクトを作成することに加えて、このメソッドは、他のコンタクトプロパティーの設定や更新にも使用できます。:このメソッドでは、既存のコンタクトのEメールアドレスは更新できません

注 - この関数の使用については、注意点があります。
  • この関数呼び出しでは、データがトラッカーに保存されますが、この呼び出しによってデータがHubSpotに渡されるわけではありません。データは、ページビューまたはイベント発生時にのみ渡されます(trackPageView関数(英語)またはtrackEvent関数のいずれか)。
  • データをコンタクトに結びつけるには、Eメールアドレスを含める必要があります。この関数ではカスタムプロパティーなどのコンタクトプロパティーの更新はできますが、データをコンタクトに関連付けできるのはEメールアドレスだけです。
  • この関数では、以前に削除されたコンタクトは復元できません。そのようなコンタクトは、アプリ内で復元する必要があります。

 

 
JavaScript
/*
この例ではクエリー文字列
パラメーター「?email=」の値を取得し、
訪問者の識別に使用します
*/

function getParameterByName(name) {
    var match = RegExp('[?&]' + name + '=([^&]*)').exec(window.location.search);
    return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
}

var _hsq = window._hsq = window._hsq || [];
_hsq.push(["identify",{
    email: getParameterByName("email")
}]);


/*
この例ではEメールと
カスタムプロパティーfavorite_colorを設定
*/
var _hsq = window._hsq = window._hsq || [];
_hsq.push(["identify",{
    email: getParameterByName("email"),
    favorite_color: 'orange'
}]);

/*
この例ではEメールと
訪問者のカスタムの外部idを設定。
サイトに変数「user」があり、さらに 
該当するユーザーのidを含む「id」プロパティーと、 
Eメールを含む「email」がある想定です。
*/
var _hsq = window._hsq = window._hsq || [];
_hsq.push(["identify",{
    email: user.email,
    id: user.id
}]);

Eメールアドレスによるレコードの識別に加えて、'id'を識別子としてカスタムの外部IDによって訪問者を識別することも可能です。Eメールの場合と同じように、'id を使用してレコードを識別すると、訪問者のアナリティクスデータがIDに関連付けられます。ただし、Eメールアドレスの場合とは異なり、'id'を含めるだけではコンタクトは作成されません。また、この'id'は完全に外部の識別子として処理されるため、アナリティクスデータをIDにより該当するコンタクトレコードに関連付けることはできます(以前にIDやEメールで識別したことがあるレコードや、以前にIDによりレコードが識別済みで訪問者がフォーム送信をしたことがある場合など)が、このIDを使用してコンタクトレコードを検索することはできません。

:この外部IDは、HubSpotトラッキングコードでのみ使用できます。他のHubSpotツールまたはAPIでのレコードの取得や更新には使用できません。 


イベントJavaScript API:_hsq.push(["trackEvent", { {event details} }]);

注意:イベントは、Marketing Hub Enterpriseが含まれるアカウント上でのみ処理できます。

 

引数 使い方 説明
イベントID id: イベントのID。HubSpotでイベントを作成した場合、生成されたイベントIDを文字列として使用します。作成していない場合、イベントの文字列名を使って動的にイベントを作成できます。名前とIDに関する詳細は、概要の部分を参照してください
value: イベントの値。イベントの収益のトラッキングに使用できる引数(任意)です。この値は、イベントがコンタクトレコードに関連付けられている場合、hs_analytics_revenueプロパティーを増加させるために使用されます。 

JavaScriptおよびHubSpotのトラッキングコードを使用してイベントをトラッキングするには、このエンドポイントを使用します。イベントを使用して、サイトの訪問者が完了した特定のアクティビティーをトラッキングすることができます。トラッキング対象のイベントは、コンタクトのタイムラインに表示されることがあります。

このエンドポイントの使用例:イベントを使うと、ログインなどのアクションを取り込むことができます。このエンドポイントのデータを使用することで例えば、ログインしていない期間が7日を超えるユーザーのセグメント化を行い、再エンゲージメントキャンペーンのターゲットにすることができます。

JavaScript
/*
「buyNow」というidの要素を訪問者がクリックすると
「clicked Buy Now button」という名前のカスタム
イベントを発生させるコードの例。
イベントの値として「20.5」を代入
*/

document.getElementById("buyNow").onclick = function() {
    _hsq.push(["trackEvent", {
        id: "Clicked Buy Now button",
        value: 20.5
    }]);
};

イベントHTTP API:GET track.hubspot.com/v1/event/ 

 

このAPIは、HTTP GET呼び出しを使ってカスタムHubSpotイベントをトリガーするために使用します。注:イベントツールにアクセスするには、Marketing Hub Enterpriseのサブスクリプションが必要です。

このエンドポイントの使用例:この呼び出しは、HubSpotアカウント上のあらゆるカスタムイベントのトリガーに使用できます。そしてそのイベントを使用して、スマートリスト、スコアリード、Eメールコンタクトを作成することができます。

レスポンスの詳細

リクエストが正常に完了した場合、本文にはデータが含まれず、ステータスコードは200になります。content-typeがimage/gifなので、<img>タグを伴うHTTP API urlを使用することが可能です。しかし、ウェブページではできる限りJavaScript APIを使用することをお勧めします。

  メソッドの詳細

HTTPメソッド: GET

レスポンス形式: N/A

認証の要否: 不要

レート制限対象: 対象外

ヘッダー: User-Agent

製品: Marketing

必要なスコープ: business-intelligence

 

注意:イベントは、Marketing Hub Enterpriseが含まれるアカウント上でのみ処理できます。

必須パラメーター 使い方 説明
HubSpot Hub(ポータル)ID &_a=XXXXXX - リクエストURLで使用。 自社のHubSpot Hub ID。Hub IDを調べる方法については、このページを参照してください。
イベントID &_n= - リクエストURLで使用 トリガーするイベントのIDまたは名前。詳しくはこちら(英語)を参照してください。

 

 

任意指定のパラメーター 使い方 説明
コンタクトEメールアドレス &email=person@company.com - リクエストURLで使用 トリガーするイベントをHubSpotに結び付けるには、このパラメーターを使用します。コンタクトがまだHubSpotに存在しない場合は、作成されます。コンタクトが存在する場合、イベントが既存のコンタクトに結び付けられます。
コンタクト収益 &_m=20 - リクエストURLで使用 イベントを使用して、自分にとってのコンタクトの価値を管理できます。ここに指定した金額値は、ウェブアナリティクスの履歴セクションの「収益」フィールドに加算されます。
あらゆるコンタクトプロパティー &{property}={value} - リクエストURLで使用 トリガーするイベントにはあらゆるコンタクトプロパティーを含めることができます。これにより、Eメールパラメーターに指定したコンタクトの該当するコンタクトプロパティーに値が代入されます。ここに使用するパラメーターは、HubSpotのコンタクト設定でのプロパティー名(ラベルではありません)と同じにしてください。例えば、favorite_colorという名前のプロパティーがある場合、次のようにプロパティーに値を代入できます:&favorite_color=orange
外部ID &id={value} - リクエストURLで使用

イベントを、外部IDに基づいてレコードに結び付けます。Eメールとは異なり、このidを含めるだけではコンタクトレコードは自動的に作成されません。したがって、idパラメーターだけを含めている場合に、イベントによって特定のコンタクトを更新するには、何らかのイベントによるidとEメールの関連付けが必要になります(idとEメール両方を指定したHTTPイベント呼び出しが過去にあった、またはEメールアドレスが関連付けられている訪問者に対しJavaScript API(英語)でidを使用したなど)。また、このidが完全に外部のIDとして扱われる点に注意してください。このIDを使用してコンタクトレコードを検索する手段はありません。


Cookieを削除する:_hsp.push(['revokeCookieConsent']);

 

GDPRに基づく同意バナーに組み込まれるHubSpotトラッキングコードによって作成されたCookieを削除します。訪問者のトラッキングに関連するCookieも対象になります。

Cookieが削除された訪問者は新規の訪問者と見なされるため、次回のページ読み込み時にはCookie同意バナーが表示されます。

削除されるCookieの具体的なリストは、このナレッジベース記事をご覧ください。

 
JavaScript
/*
「removeCookies」というidの要素を訪問者がクリック
すると、同意バナーcookieを削除するコードの例。
*/

var _hsp = window._hsp = window._hsp || [];
document.getElementById("removeCookies").onclick = function() {
    _hsp.push(['revokeCookieConsent']);
};

プライバシーに関する同意ステータスを取得する_hsp.push(['addPrivacyConsentListener',callbackFunction]);

  

現在の訪問者のプライバシーに関する同意ステータスを取得できます。

プライバシーポリシー同意バナーが有効になっていない場合、または訪問者に対して以前にそのバナーが表示され、訪問者が同意または拒否をクリックした場合は、この関数が処理されるとすぐにcallbackFunctionが呼び出されます(トラッキングコードが読み込み済みの場合は即座に、あるいはトラッキングコードの読み込み前にこの関数が_hspに含められている場合はトラッキングコードの読み込み完了後)。

同意バナーが有効になっている場合、訪問者が同意ボタンまたは拒否ボタンをクリックするとcallbackFunctionが呼び出されます。

JavaScript
// 現在の訪問者の同意ステータスをコンソールにログ出力

var _hsp = window._hsp = window._hsp || [];
_hsp.push(['addPrivacyConsentListener', function(consent) {
    console.log(consent.allowed); 
}]);

 

callbackFunctionは、consentオブジェクトを唯一の引数として受け入れます。

consentオブジェクトには単一のallowedプロパティーがあり、次の場合にtrueになります。

  • プライバシーポリシー同意バナーが有効になっていない、または通知専用モードで有効になっている場合。
  • オプトインモードが有効になっている場合に、訪問者がバナーで同意をクリックした場合。
  • オプトインモードが有効になっているときに訪問者が以前にバナーで同意をクリックしたことがある場合。

オプトインモードで同意バナーが有効になっている場合、訪問者が拒否ボタンをクリックするか、以前にクリックしたことがある場合、このプロパティーはfalseになります。


トラッキング不可Cookieを配置する:_hsq.push(['doNotTrack']);


 

訪問者のブラウザーに__hs_do_not_trackCookieを配置します。これにより、この訪問者に関するHubSpotトラッキングコードを使った情報送信は停止されます。

{track: true}引数を含めてもう一度関数を呼び出すことにより、Cookieを削除できます。
_hsq.push(['doNotTrack', {track: true}]);

:これにより、匿名化トラフィックやカスタムイベントのデータを含む、トラッキングコードによるすべての情報収集が停止されます。

JavaScript
/*
「doNotTrack」というidの要素を訪問者がクリックすると、
__hs_do_not_track cookieを配置するコードの例。
*/

document.getElementById("doNotTrack").onclick = function() {
    _hsq.push(['doNotTrack']);
};

クロスドメインリンクのパラメーターを取得する:_hsq.push(['addIdentityListener', function(hstc, hssc, hsfp) {}]) 

クロスドメインリンクの作成に必要なパラメーターを取得できます。これにより、ページ読み込み後に追加されるリンク(つまり標準的なアンカータグではなく、JavaScriptによって機能するリンク)のクロスドメイントラッキングに対応するリンクを作成できます。 

HubSpotトラッキングコードは、ドメインの異なる複数のサイトにわたって使用できます。この関数を使用することで、異なるドメインの横断的な訪問者トラッキング用リンクの作成に必要なクエリーパラメーターを取得できます。HubSpotトラッキングコードはこれらのクエリーパラメーターを使用して、異なるドメインの別個のCookieをトラッキングされた1人の訪問者にマージすることで、複数のドメイン間で特定の訪問者を識別します。

 

JavaScript
// クロスドメインのクエリーパラメーターを取得し、
// 文字列に格納。必要に応じてリンクに付加できる。
_hsq.push(['addIdentityListener', function(hstc, hssc, hsfp) {
    // 別のトラッキング対象ドメインへのリンクにこのクエリーパラメーターを追加
    crossDomainTrackingParams = '&__hstc' + hstc + '&__hssc=' + hssc + '&__hsfp=' + hsfp;
}]);

:クロスドメインリンクが必要になるのは、単一のHubSpotアカウント上で同様にトラッキング対象となっている別のドメイン(thisdomain.comanotherdomain.comなど)にリンクする場合に限定されます。HubSpotトラッキングCookieはドメインレベルで設定されるため(.thisdomain.com)、異なるサブドメイン間(www.thisdomain.comblog.thisdomain.com)の訪問では、クロスドメインリンクのパラメーターは必要ありません。

:クロスドメインリンクは、読み込み時にHubSpotトラッキングコードによって自動的に設定されます。したがって必要な処理は、トラッキングコードの読み込み後にページに動的に追加されるリンクの更新のみです。


アナリティクス イベント ハンドラーを再適用する:_hsq.push(['refreshPageHandlers'])

 

HubSpotアカウントのアナリティクス設定にアナリティクス イベント ハンドラーがある場合に、再適用します。

要素クリックイベントが設定されている場合は、その再適用も含まれます。

 この関数を使用すると、コンテンツの1つのセクションの更新やページ上でのモーダルウィンドウの表示など、ページ上のコンテンツが更新された時点で、クリックハンドラーを自動的に再適用できます。

注:この機能は、setPath関数の一部として自動的にトリガーされるため、この関数が必要になのは、トラッキング対象ページURLを更新することなく、コンテンツを更新する場合に限られます。

JavaScript
// ページコンテンツ更新後にイベントハンドラーを再適用
_hsq.push(['refreshPageHandlers']);