Гайды

При работе с Facebook Ads важно понимать, какая рекламная кампания, группа объявлений или креатив привели заявку. Если данные передаются некорректно, часть конверсий не попадает в рекламный кабинет, а алгоритмы получают меньше информации для оптимизации.

При работе с нутра-офферами в Shakes.pro эту задачу можно решить с помощью динамической передачи ID пикселя через URL. Такой подход позволяет использовать одну и ту же воронку сразу в нескольких рекламных кампаниях без ручной замены кода на каждой странице.

В этой статье разберем, как передать ID пикселя от прелендинга до страницы после оформления заказа и корректно отправить событие Lead в Facebook.

Зачем нужен динамический пиксель

При обычной настройке ID пикселя прописывается непосредственно в коде страницы. Если один лендинг используется в нескольких рекламных кампаниях, приходится создавать отдельные копии файлов или каждый раз менять код вручную.

Динамическая передача работает иначе: ID пикселя передается в URL как параметр и автоматически проходит через всю воронку.

Например:

?pixel=123456789

Такой способ особенно удобен, если вы:

  • используете один лендинг для нескольких кампаний;
  • работаете с разными рекламными кабинетами;
  • запускаете трафик на несколько ГЕО;
  • хотите быстро менять пиксели без редактирования файлов.

Что проверить перед настройкой

Все страницы, на которых используется PHP-код, должны иметь расширение .php.

Если лендинг или прелендинг сохранен как .html, PHP-код выполняться не будет. Перед началом работы переименуйте необходимые файлы.

Например:

index.html → index.php
success.html → success.php

Также убедитесь, что сервер поддерживает PHP.

Шаг 1. Передаем ID пикселя с прелендинга

Если пользователь сначала попадает на прелендинг, параметр pixel нужно передать в ссылку, ведущую на основной лендинг.

В файле index.php найдите ссылку перехода и добавьте к ней:

?pixel=<?php echo $_GET['pixel']; ?>

Пример:

<a href="land/index.php?pixel=<?php echo $_GET['pixel']; ?>">Купить</a>

После этого значение пикселя автоматически перейдет на следующую страницу.

Шаг 2. Передаем параметр в форму заказа

На лендинге необходимо сохранить полученное значение и отправить его вместе с заявкой.

В начале файла можно получить параметр:

<?php $pixel = $_GET['pixel'] ?? ''; ?>

Затем добавьте скрытое поле в форму заказа:

<input type="hidden" name="pixel" value="<?php echo htmlspecialchars($pixel); ?>">

Теперь ID пикселя будет передаваться вместе с остальными данными формы.

Шаг 3. Передаем параметр на страницу после заказа

После обработки заявки значение pixel должно попасть на страницу success.php.

Если данные отправляются методом POST, получите параметр так:

$pixel = $_POST['pixel'] ?? '';

После этого передайте его при переадресации:

header('Location: success.php?pixel=' . urlencode($pixel));
exit;

В результате пользователь попадет на страницу примерно с таким адресом:

https://ваш-домен.com/success.php?pixel=123456789

Шаг 4. Отправляем событие Lead

Откройте файл success.php и получите значение пикселя:

<?php $pixel = $_GET['pixel'] ?? ''; ?>

Затем разместите внутри страницы код события:

<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=<?php echo htmlspecialchars($pixel); ?>&ev=Lead&noscript=1"/>

После оформления заказа Facebook автоматически получит событие Lead с нужным ID пикселя.

Если в ссылке уже есть другие параметры

Если в URL уже передаются UTM-метки или другие параметры, pixel просто добавляется через символ &.

Например:

https://ваш-домен.com/potok?utm_campaign=test&utm_content=video&pixel=123456789

Главное правило — параметр pixel должен сохраняться на каждом этапе воронки. Если одна из страниц его не передаст дальше, Facebook не получит корректное событие.

Как проверить настройку

Перед запуском рекламы стоит пройти весь путь самостоятельно.

Проверьте:

  • открывается ли ссылка с параметром pixel;
  • передается ли значение между страницами;
  • появляется ли заявка в Shakes.pro;
  • корректно ли открывается success.php;
  • отображается ли событие Lead в Facebook.

Лучше потратить несколько минут на проверку, чем искать ошибку уже после запуска рекламы.

Частые ошибки

Файлы сохранены как .html. PHP-код не выполняется, поэтому параметр не передается.

Pixel передается только на первой странице. Значение доходит до лендинга, но теряется после отправки формы.

Используются разные методы передачи. Форма отправляет данные через POST, а обработчик пытается получить их через GET.

Неверно составлен URL. Первый параметр всегда начинается с ?, остальные добавляются через &.

Вывод

Динамическая передача пикселя позволяет использовать одну воронку сразу в нескольких рекламных кампаниях и избавляет от необходимости вручную менять код при каждом запуске.

Если вы работаете с Facebook Ads и запускаете нутра-офферы через Shakes.pro, такая настройка поможет точнее отслеживать конверсии и быстрее анализировать результаты.

Перед запуском обязательно отправьте тестовую заявку и убедитесь, что событие Lead корректно отображается в рекламном кабинете, а заявка появилась в личном кабинете Shakes.pro.

Тоже интересно

$40 000 профита на Cardione IT: разбор связки на Италию от теста до масштабирования
Кейсы

$40 000 профита на Cardione IT: разбор связки на Италию от теста до масштабирования

Кейс Euphoria Traffic Team: как за месяц сделать ~$40 000 чистого профита на оффере Cardione в Италии — сетап, крео, сплит-тесты транзиток и экономика связки.

Парковка домена в Shakes.pro за 5 шагов: без танцев с DNS
Гайды

Парковка домена в Shakes.pro за 5 шагов: без танцев с DNS

Как припарковать свой домен в Shakes.pro: CNAME-запись на parked.shakes.pro, добавление в раздел «Парковки» и подключение к потоку — один раз на несколько минут.

Shakes.pro + Keitaro: интеграция за 15 минут и передача заявок по API
Гайды

Shakes.pro + Keitaro: интеграция за 15 минут и передача заявок по API

Как подключить Shakes.pro к Keitaro по готовому шаблону и передавать заявки с локального лендинга через API: постбэк, order.php, subid и тестовый лид перед запуском.