お世話になります。
現在、弊社で使用しているGoogleアナリティクスのタグが、
「非同期ga.js」と「analytics.js」の2種類使用しています。
2種類のタグから「gtag.js」に設定を変更を検討しております。
タグマネージャーには、非同期ga.jsで使用している記述がありました。
書き方が理解しきれていないのですが、
どのように「gtag.js」の記述にすればいいでしょうか。
▼▼タグマネージャーの記述(一部タグ設定)▼▼
//以下、GA実行部分
//グローバル変数を、_gaq,_gatのみに
//utma-cookieの生成を優先するために、dummyのevent(直帰率に影響なし)を発行後、pageviewを発行
//error時には、errorイベントを発行
//カスタム変数1には、ユーザースコープでUserユーザー別(匿名)をキー、未購入者/既購入者を値
//既購入者には、サンユーページで Cookie、IsCustomerにYesを格納して判別
//カスタム変数2には、ページスコープでユーザー別(匿名)をキー、時刻・訪問回数を値
//カスタム変数3には、セッションスコープでユーザー別(匿名)をキー、訪問回数を値
var _gaq = _gaq || [];
_gaq.push(['b._setAccount', 'UA-●●●●●●-●']);//使用するweb-property-IDを入力
_gaq.push(['b._setDomainName', '●●●●.jp']);//ドメイン
_gaq.push(['b._setAllowLinker', true]);
_gaq.push(['b._addIgnoredRef', 'www.swallow.jp']);
_gaq.push(['b._addOrganic','nifty','q']);
_gaq.push(['b._addOrganic','infoseek','qt']);
_gaq.push(['b._addOrganic','livedoor-search.naver.jp','q']);
_gaq.push(['b._addOrganic','naver.jp','q']);
_gaq.push(['b._addOrganic','so-net','query']);
_gaq.push(['b._addOrganic','fresheye','kw']);
_gaq.push(['b._addOrganic','auone','q']);
_gaq.push(['b._addOrganic','ocnsearch', 'MT']);
_gaq.push(['b._addOrganic','search.ecnavi.jp','Keywords']);
_gaq.push(['b._addOrganic','hi-ho', 'MT']);
_gaq.push(['b._addOrganic','odn','search']);
_gaq.push(['b._addOrganic','excite','search']);
_gaq.push(['b._addOrganic','asahi','Keywords']);
_gaq.push(['b._addOrganic','luna', 'q']);
_gaq.push(['b._addOrganic','lunascape','p']);
_gaq.push(['b._addOrganic','hatena', 'word']);
_gaq.push(['b._addOrganic','mixi', 'keyword']);
_gaq.push(['b._addOrganic','search.smt.docomo.ne.jp', 'search_box']);
_gaq.push(['b._trackEvent',"dummy","dummy","",0,true]);//utma-Cookie作成・更新のため,直帰率には影響与えません
//以下、eventTrack作成のタイミングをみるため、少し時間を起きます。20ms。なくても良いかもしれません。
var fun = function(){
//匿名ユーザー固有番号取得
var get_user_id = function(){
var utma = document.cookie.match(/__utma\=([^;] )/);
if(!utma) return "not-get"
if(!utma[1] || utma[1].split(".").length!=6) return "not-good"
return utma[1].split(".")[1]
}
//セッション番号取得
var get_session_num = function(){
var utma = document.cookie.match(/__utma\=([^;] )/);
if(!utma) return "not-get"
if(!utma[1] || utma[1].split(".").length!=6) return "not-good"
return utma[1].split(".")[5]
}
//現在時刻取得(yyyy/mm/dd hh:mm:ss)
var get_time_now = function(){
//utility関数:先頭ゼロ付加
function padZero(num) {
var result;
if (num < 10) {
result = "0" num;
}else{
result = "" num;
}
return result;
}
var now = new Date();
return now.getFullYear() "/" padZero(now.getMonth() 1)
"/" padZero(now.getDate()) "_" padZero(now.getHours()) ":"
padZero(now.getMinutes()) ":" padZero(now.getSeconds())
}
//__utmv Cookieをマクロから変数に取り込み。
if ({{Cookie__utmv}} != undefined){
var cookie_v = {{Cookie__utmv}};
}else{
cookie_v= "none";
}
setTimeout(function(){
try{
if(cookie_v.indexOf("IsMember=Member") == -1) _gaq.push(['b._setCustomVar', 5, "IsMember", "Non_Member", 1]);
if(cookie_v.indexOf("=Customer") == -1) _gaq.push(['b._setCustomVar', 1, get_user_id(), "Non_Customer", 1]);
_gaq.push(['b._setCustomVar', 2, get_user_id(), get_time_now() "_" get_session_num(), 3]);
_gaq.push(['b._setCustomVar', 3, get_user_id(), get_session_num(), 2]);
}catch(e){
_gaq.push(['b._trackEvent','error',e.message,'',0,true]);
}finally{
_gaq.push(['b._trackPageview']);
}
},20);
}
_gaq.push(fun);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? '
https://ssl' : '
http://www') '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();