メインコンテンツまでスキップ

Cookie同意ツールとの連携(スクリプト設置)

このページについて

このページでは、サイトで Cookie 同意ツール(Cookie バナー等)を利用している場合の
QA ZERO との連携方法について説明します。

Cookie 同意ツールを利用していない場合は、
このページの作業は不要です。


なぜこの連携(スクリプト設置)が必要なのか

QA ZERO では、サイト訪問者が Cookie の利用に同意しているかどうかに応じて、
計測方法(Cookieを使った計測か使わない計測か)を切り替えることができます。

そのため、Cookie 同意ツールを利用しているサイトでは、
サイト訪問者の Cookie 同意/拒否の結果を QA ZERO に通知するための
JavaScript スクリプト(同意連携スクリプト)の設置が必要です。


スクリプトの設置と順序

同意連携スクリプトは、
Cookie 同意ツールおよび ZERO のタグとの読み込み順を意識して設置してください。


同意連携スクリプトは、
Cookie 同意ツール本体が読み込まれた後に実行される必要があります。

そのため、ツールが指定する
「同意状態が確定したタイミング(コールバック関数やイベント)」の中に記述してください。


2. ZERO タグ同士の順序

ZERO に関するタグは、次の順番で設置します。

  1. 計測タグ(先)
  2. 同意連携スクリプト(後)

同意連携スクリプトでは
qahmz_pub.cookieConsent() という JavaScript 関数を呼び出します。

この関数は計測タグ内で定義されるため、
計測タグを先に読み込んでおく必要があります。

順序が逆になると、
関数が未定義の状態で実行され、エラーが発生する可能性があります。


同意連携スクリプトで行うこと

QA ZERO と Cookie 同意ツールを連携する場合、
サイト側で実装する内容は次の 2 点です。

  1. qahmz.cookieConsentObject を定義する
  2. Cookie 同意ツールの状態に応じて qahmz_pub.cookieConsent() を呼び出す

1. 同意オブジェクトの定義

計測タグの後に、次のコードを記述してください。

<script>
var qahmz = qahmz || {};
qahmz.cookieConsentObject = true;
</script>

2. 同意/拒否の通知

Cookie 同意ツールが示す同意状態に応じて
以下の JavaScript を呼び出すように実装します。

  • 同意したとき
    qahmz_pub.cookieConsent(true);

  • 拒否したとき
    qahmz_pub.cookieConsent(false);


実装イメージ(サンプル)

以下は 実装例(サンプル) です。
実際の実装では、お使いの Cookie 同意ツールの仕様に合わせてコードを記述してください。

1) 同意状態を表す値を直接参照できる場合

  • 変数名(例:consentStatus
  • 同意/拒否を表す値(例:"accepted" / "rejected"
    は、お使いの Cookie 同意ツールの仕様に基づいて適切に実装してください。
<!-- ① 同意オブジェクトの定義(必ず書く) -->
<script>
var qahmz = qahmz || {};
qahmz.cookieConsentObject = true;
</script>

<!-- ② 同意/拒否の通知(Cookie同意ツールの仕様に合わせて書く) -->
<script>
if (consentStatus === "accepted") {
qahmz_pub.cookieConsent(true);
} else if (consentStatus === "rejected") {
qahmz_pub.cookieConsent(false);
}
</script>

2) コールバック関数の引数として同意状態が渡される場合

コールバック内で qahmz_pub.cookieConsent() を呼び出します。

  • コールバック関数名(例:onCookieConsentChange
  • 引数の形式(true/false なのか、文字列なのか)
    は、お使いの Cookie 同意ツールの仕様に基づいて適切に実装してください。
<!-- ① 同意オブジェクトの定義(必ず書く) -->
<script>
var qahmz = qahmz || {};
qahmz.cookieConsentObject = true;
</script>

<!-- ② 同意/拒否の通知(Cookie同意ツールの仕様に合わせて書く) -->
<script>
window.onCookieConsentChange = function(consent) {
qahmz_pub.cookieConsent(consent);
};
</script>

3) イベントとして同意状態が通知される場合

イベントリスナー内で qahmz_pub.cookieConsent() を呼び出します。

  • イベント名(例:cookieConsent
  • イベントオブジェクトの構造(例:e.detail.agreed
    は、お使いの Cookie 同意ツールの仕様に基づいて適切に実装してください。
<!-- ① 同意オブジェクトの定義(必ず書く) -->
<script>
var qahmz = qahmz || {};
qahmz.cookieConsentObject = true;
</script>

<!-- ② 同意/拒否の通知(Cookie同意ツールの仕様に合わせて書く) -->
<script>
window.addEventListener('cookieConsent', function(e) {
qahmz_pub.cookieConsent(e.detail.agreed);
});
</script>

※ 同意状態の取得方法(変数名・値・コールバック名・イベント名など)は、
必ずお使いの Cookie 同意ツールの仕様をご確認のうえ実装してください。


次に行うこと

  • スクリプト設置後、実際のサイトで「同意/拒否」の操作を行い、想定どおりに動作するか確認してください。
  • 計測タグの設置がまだの場合は、「計測タグの設置」ページを先に 確認してください。