Adobe Analytics

AdobeAnalytics: s.Util.getQueryParam で複数パラメータ同時取得

こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。

今回はAdobe AnalyticsのAppMeasurement.jsにおけるs.Util.getQueryParam をいい感じに実装するTipsです。

Omniture時代からSiteCatalystを使い続ける諸兄はご存知であるはずですが、旧s_code.jsで使っていた s.getQueryParam は複数のパラメータを同時に取得する事が出来ました。

/* 
* s.getQueryParam(p, d, u)
* URL: example.com/?cid=123&iid=abc
* 結果: 123|abc
*/
s.campaign = s.getQueryParam('cid,iid','|');

しかし、AppMeasurement.jsにデフォルトで含まれる s.Util.getQueryParam ではそういかず、デリミタは元のURLを区切るために指定するものとして使います。

/*
* s.Util.getQueryParam(p, u, d, f)
* URL: example.com/?hoge=123|fuga=abc
* 結果: abc
*/
s.campaign = s.Util.getQueryParam('fuga', '', '|');

で、s_code.jsからAppMeasurement.jsに乗り換えた時にこのs.Util.getQueryParamの挙動の違いに違和感があるので、これをいい感じに旧s.getQueryParamっぽく使えるように実装したらこうなりました。

/*
* s.getQueryParam for AppMeasurement (旧s.getQueryParam互換)
* Usage: s.getQueryParam(p, d, u)
* p = パラメータ
* d = デリミタ
* u = 対象URL
*/
s.getQueryParam = function(p, d, u) {
    var iarr = [];
    var oarr = [];
    if (p) {
        iarr = p.split(',');
        for (var i=0; i<iarr.length; i++) {
            if (!u) {
		        var utmp = (s.pageURL ? s.pageURL : location.href);
		        u  = utmp.split("#")[0];
	        }
            oarr.push(s.Util.getQueryParam(iarr[i], u));
        }
    }
    var dlm = d ? d : '';
	return oarr.join(dlm);
};

使い方は、旧s_code.js時代のs.getQueryParamと同じです。
当ブログでも実装済みです。

気になる方はソースコード見て真似してください。
※2019年8月21日現在、弊社ブログは未だにAdobe Dynamic TagManagerのままなので、そのうちAdobe Launchに乗り換えます。。

以上、s.Util.getQueryParam をいい感じに古き良きs.getQueryParam互換のプラグイン風に実装する方法についてでした。

弊社はデジタルマーケティングからビッグデータ分析まで幅広くこなすデータ分析のプロ集団です。
AdobeAnalyticsのコンサルティング/導入支援についてのお問合わせはこちらからどうぞ。

ブログへの記事リクエストはこちらまでどうぞ。

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Adobe Analytics

    Adobe Analytics:Report Builderの小技:リクエストのあるシートを丸ごとコ…

    エクセルでの定期レポートを作る際に、一度データブロックを作っておけば以…

  2. Adobe Analytics

    【超わかる】WEB解析の全貌

    はじめにこんにちは!インターン生の與那覇(ヨナハ)です今回は時代の…

  3. Linux

    無料のWindows10仮想マシンをEdge/IE11検証用途で使う

    こんにちは、エクスチュアの権泳東(コン・ヨンドン)です。普段W…

  4. Google BigQuery

    Big QueryでWindow関数を用いて、累積和を計算する

    こんにちは。エクスチュアでインターンをさせて頂いている中野です。…

  5. Adobe Analytics

    Adobe Analyticsと「どこどこJP」のAPIを連携する

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  6. Adobe Analytics

    Adobe Analytics: RSIDを間違えてしまったデータを正しいRSに入れ直す

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

最近の記事

  1. 【GA4/GTM】dataLayerを使ってカスタムイベント…
  2. 【GA4/GTM】dataLayerを活用しよう
  3. ジャーニーマップをデジタルマーケティングの視点で
  4. ChatGPT ProからClaude3 Proへ移行した話…
  5. その分析、やり方あってる?記述統計と推測統計の違い
  1. Mouseflow

    Mouseflowの新機能:サイト単位でレコーディング数の制限が可能に!
  2. Firebase Analytics

    Firebase Analyticsの新しいBigQueryスキーマを試す
  3. Mouseflow

    ヒートマップ活用法
  4. セッションリプレイ

    セッション・リプレイの機能強化
  5. Adobe Analytics

    Adobe AnaltyicsとGoogle Analytics の「生Webビ…
PAGE TOP