Estaba siguiendo la documentación de mixpanel sobre cómo rastrear los últimos parámetros UTM conocidos.
luego me di cuenta de que no es útil en los casos en que la última fuente de tráfico no tiene UTM, como de Google Organic, en tales casos, no registrará Google Organic como fuente de tráfico y otorgará el último crédito al último UTM conocido. ¿Cómo puedo modificar la secuencia de comandos proporcionada en la documentación para que también registre las últimas fuentes de tráfico no UTM conocidas? ¡Gracias!
function getQueryParam(url, param) { // Expects a raw URL param = param.replace(/[[]/, "\[").replace(/[]]/, "\]"); var regexS = "[\?&]" + param + "=([^&#]*)", regex = new RegExp( regexS ), results = regex.exec(url); if (results === null || (results && typeof(results[1]) !== 'string' && results[1].length)) { return ''; } else { return decodeURIComponent(results[1]).replace(/\W/gi, ' '); } }; function campaignParams() { var campaign_keywords = 'utm_source utm_medium utm_campaign utm_content utm_term'.split(' ') , kw = '' , params = {} , first_params = {}; var index; for (index = 0; index < campaign_keywords.length; ++index) { kw = getQueryParam(document.URL, campaign_keywords[index]); if (kw.length) { params[campaign_keywords[index] + ' [last touch]'] = kw; } } for (index = 0; index < campaign_keywords.length; ++index) { kw = getQueryParam(document.URL, campaign_keywords[index]); if (kw.length) { first_params[campaign_keywords[index] + ' [first touch]'] = kw; } } mixpanel.people.set(params); mixpanel.people.set_once(first_params); mixpanel.register(params); } campaignParams();