2017-02-10 2 views
0

So kann ich derzeit den GCLID-Wert von Besuchern erfassen und dies bis zu unseren Formularen übergeben. Meine Frage ist, mit den gleichen Skripten (unten angehängt), ist es möglich, auch einen utm-Wert zu erfassen? Zum Beispiel, wenn ein Besucher von einer Bing Anzeige auf unsere Website kommt, wird die URL so etwas wie www.example.com/?utm_source=bing & utm_medium = cpcSpeichern gclid und bing utm Tag in Cookie, übergeben Sie Werte zu Formular

Ich brauche den Wert speichern zu können, von utm_source (bing) in einem Cookie und übergibt diesen Wert an unsere Formulare.

Code, der für mich zur Zeit mit dem GCLID funktioniert:

Shop GCLID in Cookie (vor </body> Tag):

<script type="text/javascript"> 
function setCookie(name, value, 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 getParam(p){ 
var match = RegExp('[?&]' + p + '=  ([^&]*)').exec(window.location.search); 
return match && decodeURIComponent(match[1].replace(/\+/g, ' '));} 
var gclid = getParam('gclid'); 
if(gclid){ 
var gclsrc = getParam('gclsrc'); 
if(!gclsrc || gclsrc.indexOf('aw') !== -1){ 
    setCookie('gclid', gclid, 90); 
} 
} 
</script> 

Pass Wert bilden (im Kopfteil):

<script> 
window.onload = function getGclid() {   
document.getElementById("00N3100000H5IBe").value = (name = new  
RegExp('(?:^|;\\s*)gclid=([^;]*)').exec(document.cookie)) ? 
name.split(",")[1] : ""; } 
// window.onload() may not be supported by all browsers. 
// If you experience problems submitting the GCLID as a 
// hidden field, consider using an alternate method to 
// call this function on page load. 
</script> 

Ich kann die aktuellen Skripts ändern, um den utm-Wert zu erfassen, aber dann wird der gclid-Wert nicht erfasst. Bis jetzt war ich nicht in der Lage beides zu tun.

Jede Hilfe oder Richtung würde sehr geschätzt werden. Bitte lassen Sie mich wissen, wenn ich die Dinge besser erklären muss. Vielen Dank!

Antwort

0

Der folgende Code setzt den GCLID-Code in das ausgeblendete Feld ODER die UTM_Source. Ich habe das alles im Körper, wie Sie zuerst den Cookie setzen und dann vorlesen müssen.

Viel Glück!

HINWEIS: das "Field7" ist die ID des ausgeblendeten Felds in meinem Formular. Sie müssen das in Ihrem Formular ändern.

<script type="text/javascript"> 
 
function setCookie(name, value, 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 getParam(p){ 
 
    var match = RegExp('[?&]' + p + '=([^&]*)').exec(window.location.search); 
 
    return match && decodeURIComponent(match[1].replace(/\+/g, ' ')); 
 
} 
 
function readCookie(name) { 
 
var n = name + "="; 
 
var cookie = document.cookie.split(';'); 
 
for(var i=0;i < cookie.length;i++) {  
 
    var c = cookie[i];  
 
    while (c.charAt(0)==' '){c = c.substring(1,c.length);}  
 
    if (c.indexOf(n) == 0){return c.substring(n.length,c.length);} 
 
} 
 
return null; 
 
} 
 
// Define the variables 
 
var gclid = getParam('gclid'); 
 
var utm_source = getParam('utm_source'); 
 

 
// Check if there is a GCLID first, then check if there is a utm_source 
 
if(gclid){ 
 
alert(gclid); 
 
     setCookie('gclid', gclid, 90); 
 
     } else if(utm_source) { 
 
alert(utm_source); 
 
     setCookie('utm_source', utm_source, 90); 
 
} 
 

 
</script> 
 
<script type="text/javascript"> // Now set the hidden field on the form by looking for the correct cookie name 
 
window.onload = function() {  
 
    if (gclid) { 
 
document.getElementById('Field7').value = readCookie('gclid'); 
 
} else if (utm_source) { 
 
document.getElementById('Field7').value = readCookie('utm_source'); 
 
} 
 
} 
 
</script>

Verwandte Themen