Документация для разработчиков
Темная тема

Использование сквозной аналитики при создании лида

Пример использования сквозной аналитики при создании лида. Предварительно создайте php-страницу с веб-формой обратной связи (Ф.И.О, телефон). На странице разместите код примера.

Что происходит во время выполнения кода?

1. Подключается стандартный js-код из сквозной аналитики Битрикс24.
2. После заполнения формы помимо полей формы в скрытом поле передаётся код для сквозной аналитики b24Tracker.guest.getTrace().
3. Затем вызывается crm.lead.add, в котором в поле TRACE добавляется код из getTrace.

Скрипт сквозной аналитики устанавливается на вашем сайте перед закрывающим тегом </body> на всех страницах сайта включая страницу с формой.

Внимание! Для использования примера настройте работу класса CRest и подключите файл crest.php в файлах, где используется данный класс. Подробнее.

<!DOCTYPE html>
<html lang="ru">
	<head>
		<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" crossorigin="anonymous">
	</head>
	<body class="container">
		<h1>Feedback</h1>
		<?
		include("crest.php");
		$message = '';
		if(!empty($_POST['SAVE']))
		{
			$fields = [
				'TRACE' => $_POST['TRACE'],
				'NAME' => $_POST['NAME'],
				'LAST_NAME' => $_POST['LAST_NAME'],
				'PHONE' => [ [ 'value'=>$_POST['PHONE'] ] ],
			];
			$result = CRest::call(
				'crm.lead.add',
				[
					'fields' => $fields
				]
			);
			if (!empty($result['result']))
			{
				$message = 'Feedback saved';
			}
			elseif (!empty($result['error_description']))
			{
				$message =	'Feedback has not been saved: '.$result['error_description'];
			}
			else
			{
				$message = 'Feedback has not been saved';
			}
		}
		?>
		<div class="col-12">
			<p><?=$message?></p>
		</div>
		<form method="post" action="">
			<input type="hidden" id="FORM_TRACE" name="TRACE">
			<div class="row">
				<div class="col-4 mt-3">
					<label>Name*</label>
				</div>
				<div class="col-6 mt-3">
					<input type="text" name="NAME" required>
				</div>
			</div>
			<div class="row">
				<div class="col-4 mt-3">
					<label>Last name*</label>
				</div>
				<div class="col-6 mt-3">
					<input type="text" name="LAST_NAME" required>
				</div>
			</div>
			<div class="row">
				<div class="col-4 mt-3">
					<label>Phone*</label>
				</div>
				<div class="col-6 mt-3">
					<input type="text" name="PHONE" required>
				</div>
			</div>
			<div class="row">
				<div class="col-sm-10">
					<input type="submit" name="SAVE" class="btn btn-primary" value="Send">
				</div>
			</div>
		</form>
		<script>
			 window.onload = function(e){
				var traceInput = document.getElementById('FORM_TRACE');
				if(traceInput)
				{
					traceInput.value = b24Tracker.guest.getTrace();
				}
			}
		</script>
	</body>
</html>

© «Битрикс», 2001-2024, «1С-Битрикс», 2024