Google 광고: 탭을 변환하는 소스 코드는 클릭 ID를 어떻게 처리합니까?

개요


Google 광고의 변환 태그의 소스 코드로 2가지 광고에서 클릭한 ID의 쿠키를 처리하는 부분을 봤습니다.

배경.


[Google 광고] 도메인 간 변환 측정 - 구현 모드 및 검증에서 쿠키를 조사한 결과, 다음 두 가지 유형의 쿠키가 Google 광고에 전송되는 클릭 ID를 설정한 쿠키임을 확인했습니다.
- _gcl_aw- _gac_UA-***Google 광고의 변환 레이블이 두 가지 쿠키를 어떻게 처리하는지 보고 싶습니다.
※ 또한, 본 동기는 다음 기사의 영향을 받았습니다.
Google Analytics의 쿠키 구조를 설명합니다.
Google 분석의 추적 생성에 대한 철저한 설명

전제 조건


전환 라벨이 설치된 페이지에서 보세요conversion_async.js.

https://www.googleadservices.com/pagead/conversion_async.js

성형 소스 코드 .

디테일


중간에 지쳐서 대충 봤지만 쿠키 코드 두 개를 처리하는 곳을 확인했어요.혹시 틀린 게 있으면 댓글로 남겨주세요.(..)_
conversion_async.js
(function() {
...
    //718行目:URLパラメータ(a=b)を作る
    function T(a, b) {
        b = S(b);
        return "" != b && (a = S(a), "" != a) ? "&".concat(a, "=", b) : ""
    }

    //792行目:cookieからクリックID(※)を作る
    //※ "a=b" つまり "_gcl_aw=***"または"_gac_UA-***=***"
    function Kb(a, b) {  
        ...
        var d = "";
        //797行目:cookie"_gcl_aw"にマッチする値を"gclaw"にセットしてリターン
        if (b.google_gcl_cookie_prefix && /^[a-zA-Z0-9_]+$/.test(b.google_gcl_cookie_prefix) && "_gcl" != b.google_gcl_cookie_prefix)
            return d = mb(a, b.google_gcl_cookie_prefix), T("gclaw", d);
        ...
        if ...
        //804行目:"_gac_UA-***"にマッチするcookieの値をセット
        else {
            ...
            b = [];
            a = a.cookie.split(";");
            for (var e = /^\s*_gac_(UA-\d+-\d+)=\s*(.+?)\s*$/, f = 0; f < a.length; f++) {
                //808行目:"_gac_UA-***"にマッチするcookieがあれば値を取得する
                var g = a[f].match(e);
                g && b.push({
                    c: g[1],
                ...
            }
        ...
        }
        //829行目:cookie"_gac_UA-***"にマッチする値を"gac"にセットしてリターン
        return d + (c ? T("gac", c) : "")
    }

    //893行目:Google広告へのリクエストURLを作る
    function V(a, b, d, c, e, f) {  
        ...
        switch (e) {
            default: return "";
            case 2:
                    case 3:
                    var g = "googleads.g.doubleclick.net/pagead/viewthroughconversion/";
                break;
            case 1:
                    g = "www.google.com/pagead/1p-conversion/";
                break;
            case 0:
                    g = (c.google_conversion_domain || "www.googleadservices.com") + "/pagead/conversion/"
        }
        g = ["https://", g, S(c.google_conversion_id),...,"?random=",S(c.google_conversion_time)].join("");
        ...
        //909行目コンバージョンラベルやクリックIDを含む各種パラメータを設定
        a = [...,T("label", c.google_conversion_label),...Kb(d, c),...].join("");
        ...
        g += a;
        ...
        return g
    }
...
//1140行目
}).call(this);
만약 무슨 번거로운 일이 있으면 본 보도 또는 아래 계정으로 저에게 통지해 주십시오!
\Follow Me!/
Qiita 계정
트위터 계정

좋은 웹페이지 즐겨찾기