0

要するに、アドワーズ経由でどのリード (フォーム送信) が発生したかを正確に知りたいのです。

これは手動で作成されたフォーム (JotForm などではありません) であり、手動で作成された php を介して送信され、現時点ではメールが送信されます。ページとフォーム自体は HTML です。

そのため、Adwords URL に UTM 情報を追加することができます。その UTM 情報を取得してメールに渡す方法を探しています (フォームの非表示フィールドなどを介して)。

これが、どの見込み顧客に支払ったかを確認する最も簡単な方法だと思いますが、そうでない場合は、もっと良い方法を教えてください。

ティア

4

1 に答える 1

0

これらの utm を追跡する最善の方法は、それらを js Cookie に保存してから取得して、値をフォームの非表示フィールドに保存することです。Cookie を使用すると、URL でデータを何度も渡すことなく、さまざまなページをナビゲートできます。

このソリューションを変更して、フォームに使用できます。 http://www.decorumsol.com/tracking-utm-parameters-in-contact-form-7/

編集:理解を深めるためのコードは次のとおりです。

function getQueryVariable(variable)
    {
        var query = window.location.search.substring(1);
        var vars = query.split("&");
        for (var i=0;i<vars.length;i++) {
            var pair = vars[i].split("=");
            if(pair[0] == variable){return pair[1];}
        }
        return(false);
    }    
    jQuery(document).ready(function() {
        jQuery('form').find('input.utm_source').each(function() {
            var a = getQueryVariable('utm_source');
            if(a){
                jQuery(this).val(a);
            }
        });
        jQuery('form').find('input.utm_medium').each(function() {
            var a = getQueryVariable('utm_medium');
            if(a){
                jQuery(this).val(a);
            }
        });
        jQuery('form').find('input.utm_campaign').each(function() {
            var a = getQueryVariable('utm_campaign');
            if(a){
                jQuery(this).val(a);
            }
        });
        jQuery('form').find('input.utm_term').each(function() {
            var a = getQueryVariable('utm_term');
            if(a){
                jQuery(this).val(a);
            }
        });
        jQuery('form').find('input.utm_content').each(function() {
            var a = getQueryVariable('utm_content');
            if(a){
                jQuery(this).val(a);
            }
        });
    });

    function createCookie(name,value,days) {    
        var expires = "";
        if (days) {
            var date = new Date();
            date.setTime(date.getTime()+(days*24*60*60*1000));
            var expires = "; expires="+date.toGMTString();
        }
        document.cookie = name+"="+value+expires+"; path=/";
    }

    function readCookie(name) {
        var nameEQ = name + "=";
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
    }
    function eraseCookie(name) {
        createCookie(name,"",-1);
    }
    var c_name = "_aaa_utmz";
    if(getQueryVariable("utm_source") != "") {
        createCookie("_aaa_utmz", getQueryVariable("utm_source") + "|" + getQueryVariable("utm_medium")+ "|" + getQueryVariable("utm_term")+ "|" + getQueryVariable("utm_campaign")+ "|" + getQueryVariable("utm_content"), 60);
    }
    else if (readCookie(c_name)){
        c_start=readCookie(c_name);
        var _pipe = c_start.split("|");
        jQuery("input[name=utm_source], .utm_source").val(_pipe[0]);
        jQuery("input[name=utm_medium], .utm_medium").val(_pipe[1]);
        jQuery("input[name=utm_term], .utm_term").val(_pipe[2]);
        jQuery("input[name=utm_campaign], .utm_campaign").val(_pipe[3]);
        jQuery("input[name=utm_content], .utm_content").val(_pipe[4]);
    }

HTMLフォームで、作成します

<div style="display:none;">
<input type="text" value="" class="utm_source" name="utm_source" />
<input type="text" value="" class="utm_medium" name="utm_medium" />
<input type="text" value="" class="utm_term" name="utm_term" />
<input type="text" value="" class="utm_campaign" name="utm_campaign" />
<input type="text" value="" class="utm_content" name="utm_content" />
</div>
于 2016-01-16T19:56:43.617 に答える