• 手引き
  • プラットフォーム
  • パートナー
  • English
  • TLC Tealium Learning Center Tealium Learning
    Community
  • Discussions & Ideas Dicussions & Ideas
  • Product Guides Product Guides
  • Knowledge Base Knowledge Base
  • Developer Docs Developer Docs
  • Education Education
  • TLC Blog TLC Blog
  • Support Desk Support Desk
  • CDH Customer Data Hub Customer Data Hub

目次

  • バージョン4.45~4.46
  • バージョン4.43~4.44
  • バージョン4.40~4.42
  • バージョン4.36~4.39
  • バージョン4.26~4.35
  • バージョン4.006~4.011
  • バージョン4.000~4.005
JAVASCRIPT

リリースノート

リリースノート。

以下は、utag.jsのリリースごとの変更点をまとめた包括的なリストです。

お使いのutag.jsを更新して、最新バージョンの修正点や強化点を活用しましょう。

バージョン4.45~4.46

バージョン4.46

リリース:2018年6月

  • 以下の新しいビルトイン変数のサポートを追加。
    • tealium_session_number - 次に含まれる既存値の複製:utag.data['cp.utag_main__sn']
    • tealium_session_event_number - 現在のセッション(訪問)でのトラッキングコール(utag.view()、utag.link())の数をカウントするutag.data['cp.utag_main__se']内のCookie値。1回限りのページ読み込みによってページ上の多数のトラッキング対象イベントが読み込まれる単一ページアプリ(SPA)に便利です。noviewフラグを使用しているページの場合、この値はページ読み込み(タグ配信ルールの評価)とutag.view()への初回コールの両方で”1”となります。
  • utag.link、utag.viewまたはutag.trackコールに渡される空のパラメータリストのサポートを追加。以前のバージョンでは、utag.link()またはutag.view()へのコールは問題なく機能するものの、余分な”cfg”オブジェクトがデータレイヤーに追加されていました。utag.track()へのコールは、以前のバージョンでは例外が発生する原因となります。
  • noviewフラグを使用しているページについては、以下の2点に留意する必要があります。
    • データレイヤーのtealium_session_event_numberには、ページ読み込み(utag.jsではタグの読み込みにデータレイヤーが使用される)とutag.viewへの初回コール(これによってタグのトリガーや追加タグの読み込みが行われる)の両方について”1”の値が設定されます。
    • Cookieはページ読み込み時に使用および初期化されるので、最初のページでutag.viewコールが発生しないままブラウザでページが更新されると、2番目のページで発生する最初のutag.viewコールの”2”に移行します。これは極端なケースであり、ほとんどの実装ではutag.jsの実行後すぐにutag.viewがコールされることになります。
  • この更新には、従来のプライバシーマネージャ拡張機能で使用されていた”OU”関数のための修正も含まれています。
    • OPTOUTMULTI Cookieは、utag.view/linkへのコールのたびに再チェックされます(ページ更新は不要)
    • タグのUIDによって直接トリガーされるタグでも、その前にOPTOUTMULTI Cookie設定のチェックが行われます

バージョン4.45

リリース:2018年1月

  • バージョン4.40で発生していた、iframe内の同じタグが2回以上読み込まれたページについてブラウザ履歴に余分なエントリーが追加されるバグを修正。この問題は、iframeベースのタグベンダーを利用する単一ページアプリ(SPA)に影響していた可能性があります。

バージョン4.43~4.44

バージョン4.44

リリース:2017年6月

  • “tags.tiqcdn.cn”(中国)でホストされているutag.jsの訪問者セッションカウントのサポートを追加しました。
  • “example.XX.jp”のパターンに従うドメイン用のデフォルトのutag_main Cookieドメインロジックを更新しました(XX.jpドメインではCookieを設定できないが、”example.XX.jp”ドメインでは設定される)。

バージョン4.43

リリース:2017年6月

  • 以前はグローバル変数utag_cfg_ovrd(構成上書きオブジェクト)を通じてループで使用されていたグローバル変数iの使用を廃止しました
  • レガシーs2sサポートを廃止しました(すでにTealium iQから削除されていたため)。 クラウド配信はTealium Customer Data Hubでサポートされます。
  • utag.ut.loaderユーティリティ関数に渡されるエラーハンドラー関数のサポートを追加。 このサポートは、最新ブラウザのみを対象としています(古いブラウザでは、標準コールバック”cb”関数が代わりにコールされる可能性があります)。

    utag.ut.loader({
        "src"   : "https://www.example.com/path/file.js",
        "cb"    : function(){console.log("CALLBACK")},
        "error" : function(){console.log("ERROR IN LOADING")}
        });
    

バージョン4.40~4.42

バージョン4.42

リリース:2016年8月

新しいビルトインTealiumイベント属性を追加。これらの新しい属性は、各Tealiumビューまたはリンクイベントとともにデータレイヤーに追加されます。

  • tealium_visitor_id  Cookie cp.utag_main_v_id内のTealiumによって生成されるID
  • tealium_session_id  現在のセッション開始のエポックタイムスタンプ文字列(ミリ秒単位)
  • tealium_account  utag.jsファイルへのパスに含まれるアカウント文字列値
  • tealium_profile  utag.jsファイルへのパスに含まれるプロファイル文字列値
  • tealium_environment utag.jsファイルへのパスに含まれる環境文字列値。たとえば”dev”、”prod”などです。
  • tealium_datasource  Tealium EventStreamからのデータソースキー。
  • tealium_random  キャッシュバスティングで使用するための乱数を表す文字列
  • tealium_library_name  ライブラリの名前(utag.js)
  • tealium_library_version  utag.jsのバージョン。たとえば、このリリースの場合は”4.42.0”です。
  • tealium_timestamp_epoch  秒単位での現在のエポック時間を表す整数
  • tealium_timestamp_utc  UTCタイムゾーンでの現在のISO文字列タイムスタンプ(古いブラウザでは利用不可)
  • tealium_timestamp_local  ブラウザのタイムゾーンでの現在のISO文字列タイムスタンプ(古いブラウザでは利用不可)

バージョン4.41

utag.ut.encode内のフォールバック関数に関する入力ミスを修正するための軽微な更新。

形式に誤りのあるUnicode文字をエンコードする際の例外として、encodeURIComponentコールでJavaScriptのescapeコールが代わりに使用されるようになりました。

バージョン4.40

リリース:2016年4月

utag.linkおよびutag.viewを使用している単一ページアプリ(SPA)サイトでの動作の改善

以前は、utag.link/viewに渡される現在のデータレイヤー内のアイテムはutag.dataグローバルオブジェクトにマージされていました。この処理は、utag.link/viewコールのたびにタグ配信ルールを再評価するために必要でした。utag.js 4.40テンプレートでは、この処理を行わなくても済むように、公開エンジンの更新が活用されています。バージョン4.40では、utag.dataグローバルオブジェクトがutag.linkまたはutag.viewコールのたびに更新されることはありません。

次のJS拡張機能を使用すれば、4.40への更新前に4.39の動作との後方互換性をテストできます。

// JS Extension scoped to "Before Load Rules"
utag.ut.merge( b, utag.data, 0 );
utag.ut.merge( utag.data, b ,1 );

新しい”noconsole”フラグ。

このフラグをutag_cfg_ovrdオブジェクトでtrueに設定すると、utag.DBからの出力がウェブコンソールに表示されなくなります。デバッグが有効になっている場合、出力はutag.db_log配列内に引き続き保持されます。

utag.ut.loader関数を使用したDOMでのiframeの作成

同じIDのiframeが既に存在する場合、iframeが再度追加されることはありません。代わりに、iframe srcが更新されます。

utag.viewまたはutag.linklinkコールに対するJS Page変数値の更新

JS Page変数が、utag.viewまたはutag.linkをコールするたびに現在の値に更新されるようになりました。その結果、b["js_page.my_global_var"]には、utag.linkがコールされるたびにwindow.my_global_var内の最新の値が設定されることになります。

utag.linkまたはutag.viewがコールされるたびにデータレイヤー内のcp.utag_main_ses_idが保持されるバグの修正

この値は、訪問者が30分間にわたってアクティビティなしで同じページにいる場合に実行されるutag.link/viewコールの後に、新しいセッションIDに更新されるようになりました。

evalを使用してdocument.referrer値をデータレイヤーのb["dom.referrer"]に読み込む手段を排除

新しいutag.ut.encode関数

この関数は、encodeURIComponentから例外が発生した場合(例外は不完全または不正確な形式のUnicode文字をエンコードしようとすると発生する可能性がある)、代わりにエスケープを使用します。

_t_visitor_idおよび_t_session_idの提供終了

自動生成のデータレイヤー値である_t_visitor_idおよび_t_session_idは利用できなくなりました。これらはut.visitor_idおよびut.session_idに置き換わります。それでも必要な場合は、次のような方法で追加できます。

// JS Extension scoped to "Before Load Rules"
b["_t_visitor_id"] = b["cp.utag_main_v_id"];
b["_t_session_id"] = b["cp.utag_main_ses_id"];

バージョン4.36~4.39

バージョン4.39

リリース:2015年7月

  • 訪問者エンリッチメントデータをローカルストレージ内のプロファイル固有の場所に書き込むTealium Collectタグのサポートを追加。

バージョン4.38

リリース:2015年6月

  • すべてのタグをスコープとする拡張機能をいつ実行するかを選択するための新しいドロップダウンリストをサポート。
    • タグ配信ルールの後(デフォルトで選択されている)
    • タグ配信ルールの前(4.37以前のバージョンではサポート対象外)
    • タグの後(4.37以前のバージョンではサポート対象外)

この拡張機能は、4.37以前のバージョンでは複数回実行される可能性があるため、それらのバージョンとの互換性がありません。

  • すべてのタグが読み込まれる前にutag.viewをコールする方法のサポートが追加されました。utag.viewをコールし、DOM Readyをスコープとする拡張機能内のUIDによって特定のタグをトリガーする際に発生するバグが、これによって修正されます。
  • UIDによって特定のタグに対してutag.linkをコールする方法のサポートが追加されました。

バージョン4.37

リリース:2015年2月

  • utag_main Cookie内の$値のインスタンスが誤ってデコードされ、代わりに区切り記号として表示されていたバグを修正しました。この修正の後は、utag_main Cookie値が”二重デコード”されることはなくなります。
  • readywaitフラグが設定され、かつutag_dataオブジェクトがページに存在しない場合、またはそのいずれかの場合にutag_main__ss Cookieが誤って設定される原因となっていたバグを修正しました。

バージョン4.36

リリース:2015年1月

  • 新しいタグをutag.link()コールで読み込みます。以前はutag.view()コールを使用して行われていました。utag.link()コールはページにまだ含まれていないタグを読み込みます。
  • waittimerおよびreadywaitフラグがtrueに設定されている場合にutag.dataオブジェクトがDOM Readyをスコープとする拡張機能に対して初期化されないバグを修正しました。
  • 以下の新しいビルトインデータレイヤー変数を追加しました。
    • utag.data["ut.domain"]:ウェブサイトのドメイン
    • utag.data["ut.version"]:サイトで読み込まれるutag.jsのバージョン
    • utag.data["ut.event"]:イベントの種類(linkまたはview)
    • utag.data["ut.account"]:サイト上のTealium iQアカウント
    • utag.data["ut.profile"]:サイト上のTealium iQプロファイル
    • utag.data["ut.env"]:公開環境
  • 手動のutag.viewおよびutag.linkコールによってセッション終了Cookieタイムスタンプが延長されないバグを修正しました。この修正は、特に訪問者がサイトとやり取りをしている間にセッションを開いた状態に維持する手段として、AJAXを利用している単一ページアプリおよびサイトに効果的です。
  • 同期読み込みタグをブロッキングタグとして使用する妨げになっていたブロッキングタグのバグを修正しました。
  • 複数の同期ブロッキングタグの読み込みによって古いバージョンのInternet Explorer向けにキャッシュを取得するのを妨げていたバグを修正しました。
  • すべてのタグをスコープとする拡張機能の実行直前にデータレイヤーを出力するためのデバッグを追加しました。

バージョン4.26~4.35

バージョン4.35

リリース:2014年12月

  • 立て続けに実行したutag.view()コールに対してデータレイヤーが保持されないバグを修正しました。現在は、コールごとにデータレイヤーのスナップショットが保持されます。
  • 手動のutag.view()およびutag.link()コール用のデバッグ出力をさらに追加しました。
  • 新しいユーティリティ関数、utag.ut.typeOf()を追加しました。たとえば、utag.ut.typeOf([])からは”array”という値が返されます。

バージョン4.34

リリース:2014年10月

  • DOM readyStateの”complete”(”load”とも呼ばれる)イベントまでタグの読み込みを遅延させるために、オーバーライド(utag_cfg_ovrd)フラグをutag.jsに追加しました。このフラグによって得られる遅延は、Wait = Yes設定を持つすべてのタグの実行を遅らせることにより、ページの表示速度を向上させることができます。このフラグを設定するには、プリローダーをスコープとするJavaScriptコード拡張機能に次のコードを入力します。

    var utag_cfg_ovrd = {};
    utag_cfg_ovrd.dom_complete = true;
    
  • DOM readyStateが通常より早く”interactive”としてレポートされるInternet Explorerブラウザのバグを修正しました。古いバージョンのInternet Explorer向けに、readyState “complete”のための遅延が余分に追加されています。

バージョン4.33

リリース:2014年9月

  • 2つの新しいDOM変数(以前のデータソース)、ブラウザ高さ(dom.viewport_height)とブラウザ幅(dom.viewport_width)を追加しました。これらをタグ配信ルールで使用することにより、訪問者が特定のデバイスを使用してサイトを閲覧している場合にそれを検出します。たとえば、この値が480より小さいときは、訪問者がスマートフォンデバイスを使用していると考えられます。お使いのスマートフォンで試してみましょう。
  • iframeおよびスクリプトでのカスタム属性のサポートをutag.ut.loader関数に追加しました。
  • 手動のutag.viewコールによってトリガーした場合に[Tags]タブに示されている順序でタグが読み込まれないバグを修正しました。

バージョン4.32

リリース:2014年8月

  • 公開設定に伴うバグを修正したので、現在はReady待機フラグとバンドルライブラリ公開設定の両方を同じプロファイルに対して有効化できます。
  • Ready待機フラグ設定を有効にすると、utag.cfg.noviewフラグを”true”に設定している場合、”false”に再設定されるというバグを修正しました。
  • 新しい構成フラグ、待機タイマー(utag_cfg_ovrd.waittimer)の導入。DOM Ready信号が送信されるまでタグの読み込みは行われません。このフラグを使用して、DOM Ready信号の後にタグが読み込まれるまで待機する正確な時間を設定します。このフラグを設定すると、サードパーティベンダーのタグの読み込み時間を含めずにウェブページの読み込み時間が公開されます。この値は、ミリ秒単位で設定します。

以下は、待機タイマーフラグの設定方法の例です。

    var utag_cfg_ovrd={};
    utag_cfg_ovrd.waittimer=3000;

このコードスニペットは、すべてのタグの読み込みをDOM Ready信号の3秒後まで遅らせます。

バージョン4.31

リリース:2014年5月

  • 外部JavaScriptファイルの取り込み時とコールバック関数の実行時に発生する、UTAGユーティリティ関数のIEブラウザ関連のバグを修正しました。これにより、まれに発生する、コールバック関数が早すぎるタイミングで実行される問題が解決します。

  • すべてのタグが読み込まれる前にutag.viewがコールされた場合のための追加のデバッグ出力を導入。誤りが含まれる可能性のあるタグUIDは、現在はこの出力内に表示されます。

バージョン4.30

リリース:2014年4月

  • Wait = Yesに設定されている最後のタグがトリガーされず、utag.X.jsファイルがキャッシュされている場合に手動のutag.viewコールがトリガーされないというIEブラウザ(IE 9以前)のバグを修正。
  • 現在のutag.jsでは、すべてのutag.viewコールにOPTOUTMULTI(プライバシーマネージャ拡張機能)Cookie内の値が使用されるようになっています。 AJAXコンテンツでトリガーされるutag.viewコールのためにオプトアウトされているタグがトリガーされることはなくなります。 

バージョン4.29

リリース:2014年4月

  • 複数のブロッキングタグのサポートを妨げていたバグを修正。現在は、ブロッキングタグ(Tealium通貨コンバーターなど)として機能する複数のタグを、別の外部.jsファイルとともに使用できるようになりました。
  • “すべてのタグ”をスコープとする拡張機能は、すべてのブロッキングタグの完了後に実行されます。
  • utag.v.jsファイルは、utag.jsファイルをセルフホストしている状況では送信されなくなります。
  • 訪問者ID生成ロジックから”top.“を削除しました。これにより、iframesでの問題が修正されています。 

バージョン4.28

リリース:2014年2月

  • utag_mainセッションCookieが既に4.27より前のバージョンのutag.jsによって設定されているウェブサイトに訪問者がアクセスすると、ページ番号(_pn)とセッション番号(_sn)の値が常にNaNに設定される問題を修正。これらの値は、1に再設定されるようになりました。 

バージョン4.27

リリース:2014年2月

  • AudienceStreamデータレイヤーエンリッチメントのサポートを導入。これには、AudienceStreamとDataCloudタグが必要です。
  • utag.jsは、動的メタタグを収集するために、utag.viewコールのたびにメタタグを読み取ります。
  • utag_main Cookieには、以下に示すいくつかの変更点があります。

    • EU法への準拠のために、現在はutag_main Cookieの有効期間が1年に設定されています。
    • utag_main Cookie内のセッションID(ses_id)値が現在はタイムスタンプになっており、ウェブサイト上での訪問者の滞在時間を計算するために使用されます。

      この値を参照するには、次の構文を使用します。

      b["cp.utag_main_ses_id"]
      
    • utag_main Cookieにセッション番号値を導入。

      この値を参照するには、次の構文を使用します。

      b["cp.utag_main__sn"]
      
    • utag.jsが読み込まれるたび、実質的には新しいURLが読み込まれるたびに増加するページ番号値を導入。この値がイベントカウンターと混同されることはありません。この値は、新しいセッションのたびに1からカウントし直されます。

      この値を参照するには、次の構文を使用します。

      b["cp.utag_main__pn"]
      
    • 既知の問題:utag_mainセッションCookieが既に4.27より前のバージョンのutag.jsによって設定されているウェブサイトに訪問者がアクセスすると、ページ番号(_pn)とセッション番号(_sn)の値が常にNaNに設定されます。この問題は、utag.jsバージョン4.28では解決されています。

  • オブジェクトをフラット化するutag.ut.flatten関数を導入。この関数は、主にAudienceStream用のデータレイヤーエンリッチメントで使用されます。

バージョン4.26

リリース:2014年1月

utag.view()およびutag.link()コールの両方についてタグ配信ルールが再評価されています。

utag.js 4.26ファイルでのクエリ文字列パラメータとメタタグの処理方法の変更により、これらがデフォルトで小文字に設定されることはなくなりました。プロファイル内にデータソースとして識別されているクエリ文字列パラメータやメタタグがある場合、それらのデータソース名の大文字と小文字が正確に一致するように、[Data Layer]タブで更新することが必要になる可能性があります。 

カスタムスクリプトソースはブロッキングタグ

ブロッキングタグは、他のすべてのタグが実行される前に実行する必要のあるタグです。タグのカスタムスクリプトソース詳細設定の場所を入力すると、そのタグは自動的にブロッキングタグになります。このタグは引き続き非同期で読み込まれますが、それに続く非同期スクリプト(utag.10.jsなど)はブロッキングタグが完了するまで読み込まれません。

ベストプラクティス:タグのカスタムJavaScriptを読み込む必要があるが、ブロッキングタグにすることは望まないという場合は、Tealium汎用タグを使用して読み込みます。

待機フラグの改善

待機フラグはタグ構成内の詳細設定です。

待機フラグが”No”に設定されているタグは、utag.jsファイルの読み込み直後に読み込まれ、トリガーされます。待機フラグが”No”に設定され、かつ先に読み込まれたタグは、そのTealium iQでの順序にかかわらず先にトリガーされる可能性があります。たとえば、タグ2がタグ1より先に読み込まれた場合は、Tealium iQの[Tags]タブでタグ1がタグ2より上に配置されても、その順序にかかわらずタグ2が先にトリガーされる可能性があります。以前は、Tealium iQに指定されている順序でタグが実行されていました。これらのタグは、より上の順位に配置されたタグが読み込まれるまで待機し、その後に読み込まれていました。

これは、待機フラグが”No”に設定されたタグと”Yes”に設定されたタグが、現在は同じプロファイル内に混在する可能性があることを意味します。 

AJAX向けのタグ配信ルールベースのトラッキングを制御

その後のページ上でのutag.view()コールにより、タグ配信ルールをトリガーして新しいタグを読み込むことができます。以前のバージョンでは、utag.viewコールで新しいタグは読み込まれませんでした。この機能は、utag.js 4.26ではデフォルトで有効になっています。

この機能を無効にすると、現在の動作を維持できます。詳しくは、後述するutag.cfg.load_rules_ajaxフラグの詳細を参照してください。

utag.link()コールで新しいタグは読み込まれません。この操作は、utag.view()コールでのみ行えます。

UIDによってタグを直接読み込む(utag.viewおよびutag.trackコールに対する更新)

特にAJAXを使用する高度な実装では、utag.view()コールを使用して新しいタグを取り込み、それを(Tealium iQの[Tags]タブに表示される)タグのUIDに基づきトリガーします。これにより、すべてのタグ配信ルールがバイパスされます。

utag.view({page_name : "New Page"}, null, [5]);
  • パラメータ1:データレイヤー
  • パラメータ2:コールバック関数(またはnull)
  • パラメータ3:読み込んでトリガーするUIDの配列

ページトラッキングについての詳細を確認。 

新しい”メタ”タグを自動的に読み取る

以前のバージョンのutag.jsでは、”name=“を含む以下の種類のメタタグがピックアップされていました。

<meta name="keywords" content="Apple,Tab" />

新しいutag.js 4.26では、property=を含むメタタグがピックアップされるようになっています(”Open Graph”メタタグを参照)

<meta property="og:type" content="video.movie" /> 

“qp.“(クエリ文字列)および”meta.“変数のデフォルトでの”小文字化”の廃止

これは、utag.dataのデフォルト動作におけるロジックの変更です。自動的に小文字にするには、utag.cfg.lowerqpフラグをtrueに設定します。ただし、デフォルト設定では大文字と小文字の混在した状態が維持されます。

以前のutag.js動作との後方互換性を確保するには、utag.cfg.lowerqpフラグをtrueに設定します。

メタタグの小文字化を有効にするには、utag.cfg.lowermetaフラグをtrueに設定します。これは、そのメタタグの名前と値のペアの名前にのみ適用されます。

大文字と小文字の混在するクエリ文字列パラメータがある場合は、それに正確に一致するように[Data Sources]タブのデータソースの名前を更新する必要があります。また、このクエリ文字列タイプのデータソースを参照するすべてのコードも更新しなければなりません。

utag_main Cookie内の新しい値

utag_main Cookieには、以下に示す新しいCookie名/値のペアがあります。

  • utag_main_vid
    訪問者を一意に識別する長い文字列(013efdc67183001adeec0eef13010a051001b00f0093cなど)
  • utag_main__ss
    “セッション開始”フラグ。新しいセッションの最初のページビューの場合は"1"に設定します。デフォルトのセッション時間は、アクティビティなしで経過する30分です。

(以前のCookie値、utag_main__stとutag_main_ses_idは引き続き設定されています)

セッション開始のトラッキング

訪問者のセッションの開始時に、空のファイルであるutag.v.jsのリクエストが1回実行されます。このファイルは、セッション数のログを取得するためにTealium内部で使用されます。HTTPリクエストURLは、次のような形式になります。

http://tags.tiqcdn.com/utag/tiqapp/utag.v.js?a=tealium/main/201306012057&cb=1370276499302

新しいCookie値、utag_main__ssはトリガーのタイミングを決めるために使用されます。この値はセッションの最初のイベントでのみ送信されます。このリクエストは、すべてのタグがトリガーされた後、最後に送信されます。

新しい”Tealium”値

[Data Layer]タブで、以下の新しいCookie値を確認できます。

  • utag_main_ses_id Cookie内のセッションID値
  • utag_main_v_id Cookie内の訪問者ID値
  • utag_main__ss Cookie内にあるセッション開始フラグ(0または1)

URLフラグメントパラメータ

以前は、URLの?の後にある名前/値のペアが読み取られ、utag.data内にqp.値として格納されていました。現在は、ハッシュやフラグメントの#記号の後にあるアイテムも、これらの構築に使用されます。これは、AJAXサイト向けの重要な追加機能となっています。

ドメインURLの例:(http://www.example.com?param1=value1&param2=value2#hash1=value3)

以前:

utag.data = { "qp.param1" : "value1", "qp.param2" : "value2"}

新:

utag.data = { "qp.param1" : "value1", "qp.param2" : "value2", "qp.hash1"  : "value3"}

utag.viewおよびutag.linkコールで利用可能なすべてのページデータ

以前は、utag.viewおよびutag.linkコールで得られる情報は、それらに渡したデータだけでした。b["qp.campaign"]のようなアイテムにはアクセスできませんでした。現在は、URL、メタデータ、Cookie値など、すべての”ビルトイン”データポイントがutag.linkおよびutag.viewコール用のデータレイヤーに追加されます。

また、AJAXサイト向けに変更されている可能性のある動的アイテム(b["dom.url"]など)は、現在の値を使用できるように再構築されます。現在の値は、AJAXページへの初回ランディング時の値とは異なる可能性があります。 

utag.cfgの新しいオプション

プリローダーをスコープとするJavaScriptコード拡張機能とグローバル変数window.utag_cfg_ovrdを使用します。

// JS Code in Preloader Extension
window.utag_cfg_ovrd = {
    "noview"          : true,
    "lowerqp"         : true,
    "load_rules_ajax" : false
};

以下の新しいオプションを利用できます。

  • utag.cfg.load_rules_ajax
    utag.viewおよびutag.linkコールごとにタグ配信ルールを”再評価”*しない*場合は、このフラグをfalseに設定します。utag.viewについては、この設定により、初回ページビューで読み込まれなかった場合に新しいutag.X.jsファイルも読み込まれる可能性があります。
  • utag.udoname
    データオブジェクトの名前。utag.jsコードでは、データオブジェクトが別のオブジェクト内のオブジェクトではなく、グローバル変数と見なされます。これはデフォルトでutag_dataに設定されています
  • utag.cfg.load_rules_at_wait
    待機時(DOM Ready)のタグ配信ルールを再評価する場合は、このフラグをtrueに設定します。これにより、utag.jsの読み込み後にデータが設定されている可能性があり、そのデータを使用してDOM Readyを待機するよう設定されているタグをトリガーする必要がある場合のレガシーサポートが有効になります。
  • utag.cfg.lowerqp
    クエリ文字列の名前/値のペアを小文字にする場合は、このフラグをtrueに設定します。これはデフォルト動作に使用されます。
  • utag.cfg.lowermeta
    メタタグの名前を小文字にする場合は、このフラグをtrueに設定します。メタタグの名前/値のペアの値は小文字になりません。
  • utag.cfg.noview
    最初のutag.viewコールのタイミングを制御する場合は、このフラグをtrueに設定します。アプリケーションで(最初のページ読み込みアクションではなく)ページビューイベントを制御するAJAXサイトには一般的な設定です。 

検討事項

  • 誤って複数の注文をトリガー - 現在のutag.linkおよびutag.viewコールは、あらゆる”DOM”タイプのデータポイントをすべてのコールで利用できます。たとえば、b["qp.order_id"]などのクエリ文字列データはページ読み込み時に読み取られ、それによって注文イベントがトリガーされます。しかし、その同じ注文ページでutag.linkコールをトリガーすると、b["qp.order_id"]データも設定され、それによって2つ目の注文イベントがトリガーされます。
  • 大部分の直感的動作については、utag.jsファイルを読み込む前にすべてのutag_data値を設定することをお勧めします。また、utag.cfg.load_rules_at_waitは、デフォルト設定である”false”のままにします。
  • utag.js 4.26への更新により、クエリ文字列パラメータの小文字化に関するデフォルト動作が変更される点に注意してください。値が自動的に小文字化されることはなくなります。
  • “すべてのタグ”をスコープとする拡張機能は、DOM Readyをスコープとする拡張機能の前に実行される場合もあれば、後に実行される場合もあります。順序は保証されていません。すべてのタグをスコープとする拡張機能のデータレイヤー要素を操作すると、コンテンツ変更拡張機能の基準に影響する可能性があります。

    ベストプラクティス:元のデータレイヤーオブジェクトは変更しないでください。値を変更する必要がある場合は、代わりに新しい変数を使用します。

既知の問題

  • データレイヤーのutag_dataオブジェクトがutag.dataへの参照となり、一方を変更するともう一方も変更される。
  • データレイヤーが<body>要素の最後、DOM Readyの直前に定義されている場合(およびutag.jsが既に読み込まれている場合)、IE8でタイミングの問題が発生する可能性がある。ベストプラクティスとしては、utag_dataオブジェクトを常にutag.jsファイルの読み込みの前に宣言します。

バージョン4.006~4.011

バージョン4.011

リリース:2013年11月

Server to Serverのサポートの追加。現在は、Server to Server機能をタグで使用できるようにする、”Server to Server”詳細設定が用意されています。

バージョン4.010

リリース:2013年11月

Tealium通貨コンバータータグやカスタムソース詳細設定に値が設定されている任意のタグを使用している場合に、そのタグが強制タイムアウトのしきい値である3秒以上にわたって待機してから他のタグに対してu.send関数をコールするバグを修正。

バージョン4.009

リリース:2013年9月

DOM Ready後にutag.jsが実行された場合に”Wait = Yes”タグがDOM Readyイベントではなく”load”イベントを待機するバグを修正。

これにより、多くのサイトでパフォーマンスが大幅に向上し、DOM Readyを待機するよう設定されているタグがはるかに早く読み込まれるようになります。

バージョン4.008

リリース:2013年3月

末尾が”.edu.au”および”.net.au”(例として”au”を使用)のドメインをサポートするよう更新。以前のutag.jsのサポート対象は、”.com.au”と”.org.au”のみでした。

utag.loader.GV(”オブジェクト内の変数を取得”する内部関数)でhasOwnPropertyを使用するよう更新。これにより、さらに安全に反復処理を行えます。

バージョン4.007

リリース:2013年1月

[Page Data Object]公開設定にmyobj.utag_dataなどを入力することにより(myobjが存在しないと仮定)、ユーザーが”定義前の”関数で例外を引き起こす可能性がある問題を修正。この例外は、一部のコードがスキップされ、定義されていないutag.handler.extend変数の.lengthがチェックされる原因となっていました。現在は、utag.handler.extendが定義されているかどうかのチェックが行われるようになっています。

バージョン4.006

リリース:2013年1月

公開エンジンによってタグUIDの配列であるutag.loader.cfgsort変数が構築されます。この配列は、Tealium iQ内のタグの適切な順序に並べられます。現在のタグは、Tealium iQの順序に一致する順序でトリガーされるようになっています。

バージョン4.000~4.005

バージョン4.005

リリース:2012年12月

ユーティリティ関数utag.ut.decodeを追加。

“Cookieなし”フラグのutag.cfg.nocookieも追加しています。utag.cfg.nocookie値が定義され、trueに設定されると、utag.jsではutag_main Cookieが書き込まれなくなります。

既存のutag_main Cookieは変更されることも削除されることもありません。一部のタグはutag_main Cookieがあることを前提としているので、このフラグは自己責任で使用してください。

サンプル(プリローダーをスコープとするJavaScriptコード拡張機能):

var utag_cfg_ovrd={};  
utag_cfg_ovrd.nocookie=true;

utag.ut.decodeは、より安全なバージョンのdecodeURIComponentです(decodeURIComponentから例外が発生した場合、アンエスケープが使用されます)

バージョン4.004

リリース:2012年11月

タグが読み込まれる前にIEによってDOM Ready拡張機能が実行される場合と実行されない場合があるという、IE7およびIE8におけるInternet Explorer DOM Ready拡張機能の”タイミング”問題の修正を含みます。このバージョンでは、DOM Ready拡張機能が最初に実行されるように問題が修正されています。これにより、すべてのブラウザで一貫した動作が提供されます。

utag.DBでの変更。この関数は、すべてのutag.DBコールでCookieのutagdb=trueが”再チェック”されないように変更されており、高パフォーマンスのutag.DB関数に役立ちます。

新たなutag.DBコールをutag.jsに追加。

デバッグを有効にする方法:コンソールでdocument.cookie="utagdb=true"を実行します

サンプルutag.DBコール:

utag.DB("Inside of DOM Ready Extension");

バージョン4.003

リリース:2012年10月

utag_main Cookieを特定のタイムスタンプの時点で有効期限切れに設定する機能を追加。

utag.loader.SC("utag_main",{"mycookie123":"testing123;exp-1351111959896u"});

タイムスタンプの末尾にある”u”に注意してください

バージョン4.002

リリース:2012年8月

各サブプロファイルタグに対してもutag.linkを実行。

バージョン4.001

リリース:2012年8月

Cookieに異常な文字が含まれるCookieデコード問題を修正。

バージョン4.000(初回)

バージョン番号を変更せずにこのファイルを反復したものが複数存在します。

APIリファレンス

 
  • モバイル
  • 始める
    • 概要
    • モバイルの概念
    • クライアントサイド
    • サーバーサイド
    • データレイヤー
    • 同意管理
    • イベントバッチ処理
    • ユーザーの位置情報とジオフェンシング
    • 機能比較
    • トラブルシューティング
  • Remote Commands
    • 概要
    • 仕組み
    • リモートコマンド
      • リモートコマンド:AppsFlyer
      • リモートコマンド:Braze
      • リモートコマンド:Contentsquare
      • リモートコマンド:Facebook
      • Firebase
      • リモートコマンド:Usabilla
  • Android (Java)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • データ管理
    • 同意管理
    • モジュールのリスト
      • Ad Identifierモジュール
      • Crash Reporterモジュール
      • Install Referrerモジュール
      • Lifecycle Trackingモジュール
      • Locationモジュール
      • Optimizely X Trackingモジュール
    • Android TV
    • Android Wear
    • APIリファレンス
      • ConsentManager
      • DataSources
      • LifeCycle
      • Tealium
      • Tealium.Config
      • TealiumLocation
    • リリースノート
  • Cordova
    • 概要
    • インストール
    • トラッキング
    • データ管理
    • モジュールのリスト
      • Ad Identifierモジュール
      • Crash Reporterモジュール
      • Install Referrerモジュール
    • APIリファレンス
    • リリースノート
  • Flutter
    • 概要
    • インストール
    • トラッキング
    • 同意管理
    • データ管理
    • APIリファレンス
    • リリースノート
  • iOS (Objective-C)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • データ管理
    • 同意管理
    • Tag Management
    • モジュールのリスト
      • Lifecycle Trackingモジュール
      • Optimizely X Trackingモジュール
    • tvOS
    • watchOS
    • APIリファレンス
    • リリースノート
  • iOS (Swift)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • データ管理
    • アイデンティティの解決
    • アプリ拡張機能
    • 同意管理
    • モジュール
    • モジュールのリスト
      • AppDataモジュール
      • Attributionモジュール
      • AutoTrackingモジュール
      • Collectモジュール
      • Connectivityモジュール
      • CrashReporterモジュール
      • DataSourceモジュール
      • DefaultStorageモジュール
      • Delegateモジュール
      • DeviceDataモジュール
      • DispatchQueueモジュール
      • FileStorageモジュール
      • Lifecycleモジュール
      • Locationモジュール
      • Loggerモジュール
      • PersistentDataモジュール
      • RemoteCommandsモジュール
      • TagManagementモジュール
      • VisitorServiceモジュール
      • VolatileDataモジュール
    • Objective-Cとの連携
    • 機能比較
    • APIリファレンス
      • TealiumConfig
      • TealiumConsentCategories
      • TealiumConsentManagerDelegate
      • TealiumConsentManager
      • TealiumInstanceManager
      • TealiumPersistentData
      • TealiumVolatileData
      • Tealium
    • リリースノート
  • React Native
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
    • リリースノート
  • Xamarin
    • 概要
    • インストール
    • トラッキング
    • データ管理
    • 同意管理
    • APIリファレンス
    • リリースノート
  • ウェブ
  • AMP
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
  • Angular
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • JavaScript (Web)
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • ユニバーサルデータオブジェクト(utag_data)
    • ユニバーサルタグ(utag.js)
    • データレイヤーオブジェクト(b)
    • 単一ページアプリケーション
    • 設定
    • デバッグ
    • APIリファレンス
    • リリースノート
  • サーバーサイド
  • C#
    • 概要
    • インストール
    • トラッキング
    • データレイヤー
    • APIリファレンス
    • リリースノート
  • HTTP API
    • 概要
    • エンドポイント
    • データレイヤー
  • Java
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
    • リリースノート
  • Node
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Python
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Roku
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Ruby
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス
  • Unity
    • 概要
    • インストール
    • トラッキング
    • APIリファレンス

このページはお役にたちましたでしょうか?

最終更新日 :: 2022年March月2日       ご意見有難うございます。
  • 手引き
  • プラットフォーム
  • パートナー
  • モバイル
  • 始める
  • Remote Commands
  • Android (Java)
  • Cordova
  • Flutter
  • iOS (Objective-C)
  • iOS (Swift)
  • React Native
  • Xamarin
  • ウェブ
  • AMP
  • Angular
  • JavaScript (Web)
  • サーバーサイド
  • C#
  • HTTP API
  • Java
  • Node
  • Python
  • Roku
  • Ruby
  • Unity