Я прочитал следующий пост, чтобы понять, как использовать куки для захвата параметров URL UTM:
https://jennamolby.com/how-to-use-cookies-to-capture-url-parameters/
Я искренне думаю, что код, который она обрисовала в общих чертах, имеет все шаги записи, но на самом деле это не сработает. Получение этого в Stackoverflow, чтобы мы могли обновить код и чтобы мы могли обновить автора, чтобы у других (как и у меня) не возникало проблем в будущем.
Разбор URL
URL параметры должны быть проанализированы, чтобы можно было установить значения cook ie. Это можно сделать, используя javascript.
// Parse the URL
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
// Give the URL parameters variable names
var source = getParameterByName('utm_source');
var medium = getParameterByName('utm_medium');
var campaign = getParameterByName('utm_campaign');
Установка значения параметра Cook * ie
Чтобы задать значения параметра ie, jQuery и jQuery Cook ie Плагин должен быть на странице.
<script src="https://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script src="/path/to/js.cookie.js"></script>
Используя переменные, определенные на первом шаге, можно установить значения cook ie.
// Set the cookies
if($.cookie('utm_source') == null || $.cookie('utm_source') == "") {
$.cookie('utm_source', source);
}
if($.cookie('utm_medium') == null || $.cookie('utm_medium') == "") {
$.cookie('utm_medium', medium);
}
if($.cookie('utm_campaign') == null || $.cookie('utm_campaign') == "") {
$.cookie('utm_campaign', campaign);
}
Тогда мы возьмите значения ie cook и установите значения полей формы
// Grab the cookie value and set the form field values
$(document).ready(function(){
$('input[name=utm_source').val(utm_source);
$('input[name=utm_medium').val(utm_medium);
$('input[name=utm_campaign').val(utm_campaign);
});
У меня есть следующие вопросы:
Поддерживает ли Jquery файлы cookie?
Я запутался в приведенном ниже коде. Я не думаю, что это сработает, потому что он не читает значения cook ie.
// Захватывает значение cook ie и задает значения поля формы $ (document) .ready (function (function ( ) {$ ('input [name = utm_source'). val (utm_source); $ ('input [name = utm_medium'). val (utm_medium); $ ('input [name = utm_campaign'). val (utm_campaign); });
Если код не должен быть следующим:
$(document).ready(function(){
/ Put the variable names into the hidden fields in the form.
$('input[name=utm_source]').val($.cookie('utm_source'));
$('input[name=utm_medium]').val($.cookie('utm_medium')_;
$('input[name=utm_campaign]').val($.cookie('utm_campaign'));
}