リレーション設定をしたい

リレーション設定とは

リレーション設定とは、ワンタグで取得する各種データファイルに、特定のカラム(キー項目)を追加取得するための設定です。

例えば、アクセスログタグで取得する「アクセスログデータファイル(webサイト内での行動データ)」に対して、「顧客ID」や「受注ID」といった、アクセスログと顧客データ/受注データを紐づけるキー項目となるカラムを取得したり、レコメンドタグで取得する「レコメンドデータファイル」に対して、「商品ID」といった、レコメンド表示のキー項目となるカラムを取得したりすることができます。

【参考】
「アクセスログデータ」に「顧客ID」を追加取得し、「顧客データ」と紐づけるイメージ

追加取得することができるカラム(キー項目)の種類

リレーション設定により、追加取得することができるカラム(キー項目)は、4種類あります。

キー項目 用途
顧客ID 主に「アクセスログデータ」と「顧客データ」の紐づけに利用するキー項目です。紐づけを行うことで「1週間以内に3回以上サイト訪問した顧客にクーポンメールを配信 」などの施策を実施できるようになります。
商品ID 主に「アクセスログデータ」と「商品データ」の紐づけや、レコメンドタグへレコメンド表示させたい商品IDを利用するキー項目です。紐づけを行った上で、顧客データと組み合わせることで「顧客が1週間以内に閲覧した商品の商品詳細ページURLを差し込んだメールを送る 」などの施策を実施出来るようになります。
受注ID 主に「アクセスログデータ」と「受注データ」の紐づけに利用するキー項目です。紐づけを行うことで「流入チャネル別のLTV分析 」などの分析を実施出来るようになります。
その他 ワンタグで取得する各種データファイルに、自由な値を取得出来るようになります。
リレーション設定を実現するには、「キー項目の追加取得」と「キー項目を利用するタグの指定」の2つの設定を行う必要があります。まずは、「キー項目の追加取得」の操作方法を見ていきましょう!

キー項目の追加取得方法

リレーション設定により、キー項目を追加取得する方法は「①「ソースコード」から取得する場合」「②「URL」から取得する場合」「③「Cookie」から取得する場合」の3つあります。
貴社のwebサイトの構成によって、3つの内のどの取得方法を利用できるかは異なりますので、こちらにある取得方法の具体例の記事を参考に、貴社のwebサイトの構成にあった方法を選択してください。

共通の操作

共通設定」をクリックします

タグ管理」をクリックします

リレーション設定」をクリックします

新規作成」をクリックします

取得したい項目」を選択し、「適用」をクリックします

①「ソースコード」から取得する場合の操作

ソースコード」を選択します

取得したい値が存在するページ」を入力し、追加」をクリックします

「ページの指定」において複数の条件を指定した場合、「or条件」になるため、指定した複数の条件のうち1つでも一致するページ全てにおいて値を取得します。
取得したい値が存在する場所」を選択します

HTML」を選択した場合Javascript」を選択した場合その他」を選択した場合
属性値」を入力し、「適用」をクリックします

取得したい値を特定できるように入力しましょう

取得したい値が存在するページのHTMLを確認し、「ID」「CLASS」「NAME」のうち、取得したい値が入っている属性を選択してください。また、属性値は(1.完全一致/2.次を含む/ 3.次で始まる/ 4.次で終わる)の4種類から一致条件を選択でき、必ず取得したい値が1つに特定できるような属性値を入力してください。1つの条件で取得したい値が1つに特定できない場合は、「追加」をクリックして、入力欄を増やし、複数の条件で1つに特定できるようにしましょう。

「取得値の詳細設定」の設定方法

「HTML」を選択した場合、b→dashのデフォルト設定では、サイト上にテキストで表示される値(Inner HTML)が取得されます。

Inner HTML以外の値を取得したい場合は、「取得値の詳細設定」を行うことで実現できます。
以下では、『<option class=”test_input” value=”AAA”>aaa</option>』から、value値「AAA」を取得するケースの設定手順について説明します。

CLASS」「完全一致」を選択します

属性値」を入力します

今回は「test_input」という「属性値」を入力しています。

取得値の詳細設定」をクリックします

OFF」をクリックし、「ON」に変更します

取得する値の属性名を指定」を入力します

今回は「value」という「属性名」を入力しています。

適用」をクリックします

変数名」を入力します

取得したい値が存在するページのjavascriptを確認し、取得したい値が入っている変数を入力しましょう!
スクリプト」を入力します

スクリプト入力欄の入力上限は、1GBまでとなっています。ただし、入力したJavaScriptの容量が大きい場合、上限内の容量でもリクエストエラーが発生する可能性があります。
「その他」欄に記述するJavaScriptコードについて

● JavaScriptコードに記述する内容 ●
「その他」欄のJavaScriptコードには、「customValue」という変数に対して、リレーションキー(受注IDや顧客ID、商品IDなど)項目となる値を代入する処理を記述します

● リレーションキー項目取得までの流れ ●
「Step1 ページの指定」で指定したページにユーザーがアクセスした際に、「その他」欄に記述したJavaScriptが実行される仕組みになっているため、ユーザーがページにアクセスしたタイミングで、リレーションキー項目を取得し、そのキー項目をb→dashのワンタグで取得しているアクセスログの1カラムに追加/保管するという流れになっています。

futureshopの「置換文字」を含むソースコードはキー項目として利用できません

貴社のECサイトが、「ECサイト構築プラットフォーム futureshop」で導入されている場合、顧客ID/商品ID/受注IDを表記するソースコードにfutureshop独自の「置換文字」が利用されてます
置換文字は下記の例のように「<%~~.~%>」「<@~~.~@>」と表記されており、この置換文字を含むソースコードはリレーション設定のキー項目として利用することができません

置換文字が利用されている場合は、後述する「Cookie」または「URL」からキー項目を取得するようお願いいたします

【参考:futureshopの置換文字】

会員ID(顧客IDに対応) : {@ member.id @}
商品コード(商品IDに対応) : {% order.number %}
注文コード(受注IDに対応) : {% order.number %}

②「URL」から取得する場合の操作

URL」を選択します

取得したい値のあるページ」を入力し、追加」をクリックします

「ページの指定」において複数の条件を指定した場合、「or条件」になるため、指定した複数の条件のうち1つでも一致するページ全てにおいて値を取得します。
URL変数」を入力します

URL変数の抽出方法について

URLの変数では、「文字列抽出」と「正規表現」の2つの抽出方法を選択することができます。貴社のwebサイトのURLの仕様にあった抽出方法を選択してください。

文字列抽出」は、URL内の抽出したい値の桁数や位置が、一定の場合にのみ使用することができます。抽出位置を選択するだけで使用できますが、数字のみの抽出などの細かい指定はできません。
正規表現」は、数字のみの抽出などの細かいルールを指定して文字列をURLから抽出することができます。

③「Cookie」から取得する場合の操作

Cookie」を選択します

取得したい値のあるページ」を入力し、追加」をクリックします

「ページの指定」において複数の条件を指定した場合、「or条件」になるため、指定した複数の条件のうち1つでも一致するページ全てにおいて値を取得します。
Name」を入力します

今回は、「user_id」と入力しています。

Value」を入力します

今回は、一致条件に「完全一致」を選択し、Valueに「101」を入力しています。

Cookieの設定では「HttpOnly属性」を指定できません
Cookieの設定に「HttpOnly属性」が指定されていると、Cookieにアクセスできず値を取得できなくなります。Cookieから値を取得する際は、必ず「HttpOnly属性」を除外するようお願いいたします
キー項目の追加取得」は以上です!次は「キー項目を利用するタグの設定」を行っていきましょう!

いずれの方法でも取得できない場合

貴社のwebサイトの構成要素やURLの問題から、上記「ソースコード」「URL」「Cookie」の3つの方法で取得できない場合があります。この場合、貴社のwebサイトに新たにソースコードを追加(webサイトの改修)をしていただき、「ソースコード」「Cookie」で取得してください。

以下ではwebサイトの改修から「ソースコード」で取得する流れを紹介していきます。

webサイトの改修

貴社webサイトにHTML要素を追加して、リレーション設定で取得できる準備を行います。以下のサンプルコードを参考にwebサイトの改修を行ってください。

<input>タグサンプル
<input type="hidden" id="sample_id" name="" value="取得したい値(顧客IDなど)">
<input>の設置箇所はどこ??

<input>はb→dashのワンタグより上部に設置して下さい。リレーション設定において、<input>のvalue属性の値を取得するためには、<input>がb→dashのワンタグより先に読み込まれるように設置する必要があります。
設置箇所については、以下の2つの例をご参照ください。

例1:<input>を<head>内かつb→dashのワンタグよりも前に、b→dashのワンタグを<head>内に設置する

<head> 
 <input type="hidden" id="sample_id" name="" value="取得したい値(顧客IDなど)">   
 <!-- b-dash tag manager -->    
  <script type="text/javascript" src="//cdn.activity.smart-bdash.com/tag-manager/bd-j74lvc/btm.js" charset="UTF-8"></script>   
 <!-- end b-dash tag manager --> 
 <title>タイトル</title> 
</head> 

例2:<input>を</head>の直前に、b→dashのワンタグを<body>の直後に設置する

<head>
 <title>タイトル</title>  
 <input type="hidden" id="sample_id" name="" value="取得したい値(顧客IDなど)">
</head> 
<body>
 <!-- b-dash tag manager -->
  <script type="text/javascript" src="//cdn.activity.smart-bdash.com/tag-manager/bd-j74lvc/btm.js" charset="UTF-8"></script>
 <!-- end b-dash tag manager --> 
 <p>テキストを作成します</p>
</body>

ソースコードから取得する

ソースコードで取得する方法として「HTML要素を設定する」「その他要素から設定する」の2つの方法があります。

HTML要素を設定する

HTML要素を設定する場合は、webサイトの改修を行った後にリレーション設定の画面に沿ってHTML要素を入力することで簡単に値を取得することができます。

取得したい値が存在するページ」を入力し、追加」をクリックします

属性に「ID」、一致条件に「完全一致」を選択し、属性値に「sample_id」を入力します

取得値の詳細設定」アイコンをクリックします

OFF」をクリックし、「ON」にします

属性名に「value」を入力し、適用」をクリックします

その他要素から設定する

その他要素から設定する場合は、webサイトの改修を行った後にリレーション設定の画面に別途でJava scriptのソースコードを入力する必要があります。

下記のサンプルコードをb→dash画面上に入力してください

var Id = document.getElementById('sample_id').value;
customValue = Id;
「場所の指定」の「その他をクリックします

ソースコード」を入力します

スクリプト入力欄の入力上限は、1GBまでとなっています。ただし、入力したJavaScriptの容量が大きい場合、入力上限以内の数値でも、リクエストエラーが発生する可能性があります。
複数の値を取得する場合

リレーション設定において、複数の値を取得したい場合、値を「,」(カンマ)で区切る必要があります。以下のサンプルコードを、参考程度にご確認ください。

var items = ''; 
var itemArray = document.getElementByClassName('カートのclass名を記載');
 for(var i=0;i<itemArray.length;i++){
 items += itemArray[i].children[0].children[1].innerText+','; 
サイトの仕様に応じて変更する必要有り }

値を取得するタイミングを指定

次に、リレーション設定の値を取得するタイミングを指定します。値を取得するタイミングは、ページを開いたタイミングで取得」または「ページ内でクリックが発生したタイミングで取得」、もしくはその両方を指定することができます。
※ここで指定する「値を取得するタイミング」は、『どのタイミングの値を取得するか』を指定するもので、b→dashにログの送信やリクエストをするタイミングを指定するものではありません

また、「ページ内でクリックが発生したタイミングで取得」を指定した場合、値を取得するトリガーとして、ページ内のいずれかの要素がクリックされた場合に値を取得する『全ての要素』、ページ内の特定の要素がクリックされた場合に値を取得する『指定した要素』のどちらかを選択することができます。ただし、どちらのトリガーを選択した場合においても、値を取得するためには、トラッキングが発生する要素がクリックされる必要があります。

値を取得するタイミング」を指定します

今回は、「ページを開いたタイミングで取得」と「ページ内でクリックが発生したタイミングで取得」のどちらも指定しています。

ページ内でクリックが発生したタイミングで取得」を指定し、クリック取得対象に『指定した要素』を選択した場合は、取得対象にしたい『要素』を入力してください。
適用」をクリックします

リレーション設定名」「取得した値の項目名」「個人情報設定」を設定し、「保存」をクリックします

「個人情報設定を有効にする」を「ON」にした場合、個人情報の参照権限がないユーザーが、リレーション設定によって取得したカラムが存在するデータファイルの表示やダウンロードを行うと、リレーション設定によって取得したカラムの値が「***」と表示されます。
「個人情報の参照」権限については「権限設定をしたい」をご参照ください。
リレーション設定一覧に表示されます

キー項目を利用するタグの設定

次に、キー項目を追加取得したいタグにリレーション設定を適用する設定を行います。
ここでは、アクセスログデータに商品IDを追加する例を参考に説明します。

アクセスログタグ」をクリックします

未設定」をクリックします

追加したい「リレーション設定」を選択し、「適用」をクリックします

webアクセスログタグに設定できるリレーション設定は最大50個となります。
ON」をクリックし、「OFF」にします

アクセスログタグを一度「OFF」にする必要があります
アクセスログタグ画面にリレーション設定をした後、アクセスログタグを一度「OFF」にして、再び「ON」にする必要がありますのでご注意ください。
OFF」をクリックし、「ON」にします

アクセスログタグが「ON」であることを確認します

タグに複数のリレーション設定を適用することもできます。その場合は、タグで取得したデータファイルに複数のカラムが追加取得されます。
リレーション設定を行った日時以降のみ、値を取得できます

リレーション設定を行った場合、設定を行った日時以降のみ「リレーション設定の値」を取得できますリレーション設定を行っても、設定を行った日時より前の「リレーション設定の値」は取得できませんのでご留意ください。

リレーション設定で取得できる値の文字数の最大値
リレーション設定で取得できる文字数は最大255文字です。255文字を超えた場合は、255文字目以降の文字は「切り捨て」となりますので注意しましょう。
リレーション設定で取得したそれぞれの値の格納先

アクセスログタグの「リレーション設定_1」~「リレーション設定_50」に登録したリレーション設定で取得できるそれぞれの値は、b→dashデータのwebアクセスログデータ内「リレーション項目_1」~「リレーション項目_50」に格納されます

例えば、「リレーション設定_1」に登録したリレーション設定が取得できる値は、「リレーション項目_1」に格納されます。

【参考:webアクセスログデータ】

リレーション設定を変更しても過去に取得した値は削除されません

リレーション設定の内容を変更した場合、変更前に取得したリレーション設定の値は既存のカラムに残り続けます

例えば、「リレーション設定_1」に登録している「顧客ID」取得設定を「受注ID」取得設定に変更した場合、変更前に取得した「顧客ID」は「リレーション項目_1」に残ったままになります。

リレーション設定の編集/削除/値のコピー方法

作成したリレーション設定は、「リレーション設定一覧」から編集/削除、各値のコピーを行うことができます。以下では、その方法を説明します。

作成したリレーション設定の編集方法
編集したいリレーション設定」を選択し、「編集アイコン」をクリックします

任意の編集を行い、「適用」をクリックします

作成したリレーション設定の削除方法
削除したいリレーション設定」を選択し、「削除アイコン」をクリックします

削除」をクリックします

リレーション設定した各値のコピー方法
コピーしたい値のある「リレーション設定をクリックします

リレーション設定の詳細画面を表示します

対象ページに指定した「URL」や指定した「要素」のコピーを行うことができます

これで、リレーション設定は完了です!最後に、タグで取得しているデータファイルにリレーション設定が反映されているかを確認しましょう!

リレーション設定の反映確認方法

最後に、正しくリレーション設定ができているか、リレーション設定によって値を取得できているかを確認する方法について説明します「b→dashデータを確認する」「webサイトを確認する」の2つの確認方法について紹介しますので、併せてご確認ください。

b→dashデータを確認する

リレーション設定で取得した値が格納される「webアクセスログデータ」の確認を行います。

データパレット」をクリックします

データを確認する」をクリックします

b→dashデータ」のタブをクリックします

タグで取得したデータファイルは全て、「b→dashデータ」のタブの中に配置されています。
リレーション設定を行ったデータファイルを選択します

リレーション設定で追加したカラムが反映されていることを確認します

リレーション設定で追加したカラムの値の確認方法

リレーション設定を追加する以前のカラムの値には、「NULL(空白)」が入ります。そのため、リレーション設定で追加したカラムに値が入っているか確認したい場合、追加したカラムに対して条件「空文字ではない」で「絞込み」加工を行って、確認する必要があります。「絞込み」の方法については、こちらの記事をご参照下さい。

webサイトを確認する

次に、リレーション設定を行ったwebサイトを確認します。今回は、下記「注文完了」ページの「注文コード」の値を取得するリレーション設定が正しく機能しているかを確認する例をもとに確認方法について紹介します。

【参考:注文完了ページ】

リレーション設定を確認したいページの「前ページ」で、
右クリックのメニューから「検証」を選択します

メニューバーから「Network」をクリックします

リレーション設定を確認したいページまで遷移します
(参考例では「注文完了ページ」まで)

リレーション設定を確認したいページまで遷移します
(参考例では「注文完了ページ」まで)

リレーション設定を確認したいページで「tracking」をクリックします

Payload」をクリックします

Request Payloadの「&cc{n}=○○」からリレーション設定の値を確認することができます
※ {n}は任意の値が入ります

参考例では、注文コードである「&cc(n)=1030」を確認することができました。

Request Payloadに「&cc{n}=○○」が確認できない場合、リレーション設定が正しく機能していません。
リレーション設定が上手く行われていない場合

上記の2つの確認方法「b→dashデータを確認する」「webサイトを確認する」両方で確認ができなかった場合は、下記の「リレーション設定で正しい値を取得できていない時はこちらを参照ください」をもとに再度リレーション設定を行ってください

上記の2つの確認方法のうち「b→dashデータを確認する」だけ確認できなかった場合は、お手数ですが貴社カスタマーサポート担当までご連絡ください

「取得したい項目」が読み込まれる前にタグが発火した場合は値を取得できません

リレーション設定で指定した「取得したい項目」が読み込まれる前にb→dashのワンタグが発火した場合は、値を取得できません。「取得したい項目」が読み込まれる前にワンタグが発火する場合は、ワンタグの発火タイミングを調整する必要があります。
以下では「直貼りでタグを設置している場合」と「GTMでタグを設置している場合」の2つに分けてワンタグの発火タイミングを調整する方法を説明します。

直貼りでタグを設置している場合

「直貼りでタグを設置している場合」は、ワンタグの発火タイミングを調整するために、貴社webサイトにJavascriptでsleep処理を実装してください。「取得したい項目」が読み込まれた後に、ワンタグが発火するようにsleep処理の実装をお願いします。

GTMでタグを設置している場合

「GTMでタグを設置している場合」は、ワンタグの発火タイミングを調整する方法が2つあります。GTMでのタグの管理状況に合わせて、それぞれご参照ください。

【① GTMでタグを複数管理している場合】
GTM管理画面上で、ワンタグの「タグ配信の優先度」を低く設定してください。「タグ配信の優先度」については、以下をご参照ください。
Google タグマネージャーヘルプ:優先度の設定

【②「タグ配信の優先度」を設定できない場合】
貴社webサイトにJavascriptでsleep処理を実装してください

※ 上記2つの設定は、ワンタグの「処理開始タイミング」を指定する設定で「処理完了タイミング」を指示する設定ではありません。そのため「取得したい項目」の読み込みが大幅に遅延した場合は、値が取得できませんのでご留意ください。

リレーション設定で正しい値を取得できていない時はこちらを参照ください

リレーション設定で正しい値を取得できていない時は何らかの設定が誤っていると考えられます。以下によくある誤りを記載しますので、こちらに該当しないかご覧ください。

考えられる原因 改善策
b→dashのワンタグが設置されていない キー項目を取得したいページへのワンタグの設置をお願いします
リレーション設定で設定したURLが間違っている キー項目が存在するURLとなっているかご確認ください
ユーザーのアクセス環境に問題があり、ネットワークエラーが発生している ユーザーのアクセス環境に起因するため、ご対応頂けない場合がありますので、ご留意ください