@proclub

Как сохранить утм метки при переходе на другую страницу сайта?

Привет ребят, такой вопрос есть форма

<form action="send.php" method="post">
						<input type="hidden" name="utm_source" value="<?php $utm_source = $_GET['utm_source']; echo $utm_source; ?>">
							<input type="hidden" name="utm_medium" value="<?php $utm_medium = $_GET['utm_medium']; echo $utm_medium; ?>">
							<input type="hidden" name="utm_campaign" value="<?php $utm_campaign = $_GET['utm_campaign']; echo $utm_campaign; ?>">
							<input type="hidden" name="utm_content" value="<?php $utm_content = $_GET['utm_content']; echo $utm_content; ?>">
							<input type="hidden" name="utm_term" value="<?php $utm_term = $_GET['utm_term']; echo $utm_term; ?>">
						<input type="text" required="required" name="name" class="form-control" placeholder="Имя">
						<input type="text" id="phone"  name="phone" class="form-control" placeholder="Телефон">
						<button class="button" 
onclick="ym(34846055, 'reachGoal', 'zapisalis_na_test_drive'); ga ('send', 'event', 'form', 'send');" type="submit">Записаться на тест-драйв</button>
					</form>


Есть её обработчик:
//Принимаем постовые данные
    $name=$_POST['name'];
    $phone=$_POST['phone'];
    $utm_source = $_POST['utm_source'];
    $utm_medium = $_POST['utm_medium'];
    $utm_term = $_POST['utm_term'];
    $utm_content = $_POST['utm_content'];
    $utm_campaign = $_POST['utm_campaign'];



     
    //Тут указываем на какой ящик посылать письмо
    $to      = 'rotatephenix@gmail.com';
    
    //Далее идет тема и само сообщение
    $subject = "Заявки с сайта Microb.dynamic.su";
    $message = "
    Письмо отправлено из моей формы microb.dynamic.su.<br />
    Пользователь указал:<br />Имя: ".htmlspecialchars($name)."<br />
    Телефон: ".htmlspecialchars($phone)."<br />
    utm_source = ".htmlspecialchars($utm_source)." <br />
    utm_medium = ".htmlspecialchars($utm_medium)." <br />
    utm_term = ".htmlspecialchars($utm_term)." <br />
    utm_campaign = ".htmlspecialchars($utm_campaign)." <br />
    utm_content = ".htmlspecialchars($utm_content);
    $headers = "From: translate-lang.bid <site-email@mysite.ru>\r\nContent-type: text/html; charset=utf8 \r\n";
    mail ($to, $subject, $message, $headers);


На главной на почту приходят корректные утм метки. А вот если пользователь зайдет на внутреннюю и оттуда отправит форму, то она будет уже без меток. Как можно их сохранять?

Если не сложно, ссылку на доку что даст ответ, а то у нас с php не очень дела идут
  • Вопрос задан
  • 2354 просмотра
Пригласить эксперта
Ответы на вопрос 2
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
При обработке запроса сохраняйте utm-метки в сессию, если они есть. Если их нет, берите из сессии.
Ответ написан
Комментировать
joeberetta
@joeberetta Куратор тега JavaScript
Читай: https://epdf.pub/google-for-dummies.html
Если у вас utm настроен только на главную страницу, то наверное нужно (далее костыль, на свой страх и риск) при входе на сайт записать его utm данные в куки/локалсторэж и при отправке его использовать. НО! Не забудьте подчищать данные перед уходом пользователя с сайта/после отправки формы, да бы не сломать себе же статистику, например, кривыми/старыми/неверными данными
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы