0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

googleOptimizeでデータレイヤー変数を使用する

Last updated at Posted at 2018-03-19

googleOptimizeを用いてABテストを行いたかったのですが、
単純なページロード時にランダムにテストではなく、条件をつけたかったのでメモ。

googleOptimizeとはについてはこちらがとてもわかりやすかったです
https://webbu.jp/googleoptimize-2-3173

やりたかったこと
blogの記事カテゴリによってABテストの表示切り替えを行いたい (該当カテゴリのみBのパターンを表示、など)

実現方法
1)ソース側
サーバーサイド側で実現したい絞り込みで条件分岐させ真偽なりintなりでABテストを行うか否かのフラグを立てる
立てたフラグをscriptタグ側で表示させる

sample.js
<?php
$hoge_flg = 0;
 if ($category === 'hoge') {
 $hoge_flg = 1;
}?>
dataLayer = [{'test': <?php echo json_encode($hoge_flg);?>}];

ただし、上の形式ではGoogleのスニペット(より上)に記載しないと取得が正常に働かない:cold_sweat:
サーバーサイド側でフラグを取得できるタイミングがより後になるのであれば

sample.js
<?php
$hoge_flg = 0;
 if ($category === 'hoge') {
 $hoge_flg = 1;
}?>
dataLayer = dataLayer || [];
dataLayer.push({'test':<?php  echo json_encode($hoge_flg); ?>});

とする必要がありそう

dataLayer = dataLayer || [];
の詳細な解説を含め、こちらを大変参考にさせていただきました:clap_tone1::clap_tone1:
わかりやすい解説です!感謝

解決済み: GTMとデータレイヤー変数でのeコマース実装は、カグアさんのブログの通りのデータレイヤーコード書き出... - Google 広告主コミュニティ

2)GoogleOptimize側での設定

今回はデータレイヤー変数を使用

上記で呼び出したhoge_flgを データレイヤーの変数名 と 変数名 に設定し、
if条件も任意に設定する
https://support.google.com/optimize/answer/6301794?hl=ja&ref_topic=6283433

たいした内容ではなくすみません。。もっと詳しい方の細くもお待ちしております:angel:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?