Google サイト運営者タグ用の Audience Manager コード

最終更新日: 2021-06-01

AamGpt は、Audience Manager の Cookie データを読み取り、Google Publisher Tags に情報を送信する JavaScript 関数です。

メモ

Audience Manager の Cookie データを UUID および宛先の Cookie から読み取るための独自のコードがある場合、この関数は不要です。

サンプルコード

AamGpt コードをページの先頭、可能であれば <head> コードブロック内に配置します。AamGpt コードは以下から利用できます。

var AamGpt = {
 strictEncode: function(str){
  return encodeURIComponent(str).replace(/[!'()]/g, escape).replace(/\*/g, "%2A");
 },
 getCookie: function(c_name)
 {
  var i,x,y,c=document.cookie.split(";");
  for (i=0;i<c.length;i++)
  {
   x=c[i].substr(0,c[i].indexOf("="));
   y=c[i].substr(c[i].indexOf("=")+1);
   x=x.replace(/^\s+|\s+$/g,"");
   if (x==c_name)
   {
    return unescape(y);
   }
  }
 },
 getKey: function(c_name){
  var c=this.getCookie(c_name);
  c=this.strictEncode(c);
  if(typeof c != "undefined" && c.match(/\w+%3D/)){
   var cList=c.split("%3D");
   if(typeof cList[0] != "undefined" && cList[0].match(/\w+/))
   {
    return cList[0];
   }
  }
 },
 getValues: function(c_name){
  var c=this.getCookie(c_name);
  c=this.strictEncode(c);
  if(typeof c != "undefined" && c.match(/\w+%3D\w+/)){
   var cList=c.split("%3D");
   if(typeof cList[1] != "undefined" && cList[1].match(/\w+/))
   {
    var vList=cList[1].split("%2C");
    if(typeof vList[0] != "undefined")
    {
     return vList;
    } else {
     return null;
    }
   } else {
    return null;
   }
  } else {
   return null;
  }
 }
};

このページ