# FAQ по лендингам
- Как определить проблему с лендингом?
- Как увеличить лимит загружаемых архивов с файлами локальных лендингов?
- Почему скачанный с партнерки лендинг не ведет на мои офферы?
- Как перебросить все параметры через лендинг?
- Как передать параметр, если на лендинге форма заказа?
- Как не засчитывать переход на оффер?
- Как вставить subid и другую информацию на лендинге (при использовании редиректа)?
- Как вставить subid и другую информацию на лендинге (при использовании предварительной загрузки)?
- Почему не считаются метрики LP клики, LP CTR и Время продажи?
- Как передавать параметры в пиксель FB?
- Как подключить Keitaro к lpmotor.ru?
- Почему при "Показать HTML" не показываются картинки?
- Как исключить прямые посещения лендинга?
- Нужно ли указывать полные пути до файлов в локальном лендинге?
- Нужно ли ставить какой-нибудь код интеграции на локальный лендинг?
- Почему дублируются клики в статистике при открытии лендинга?
- Почему в локальных лендингах не работают якоря (#anchor)?
- Можно ли убрать base path в локальных лендингах?
- Почему не работает плавный скролл (scroll)?
- Вариант починки плавного скролла (scroll)?
- Как записать данные клика в php?
- Можно ли в коде локального лендинга использовать внешние svg?
- Как показывать время на лендинге
# Как определить проблему с лендингом?
Откройте консоль браузера Developer Tools. И посмотрите тексты ошибок.
# Как увеличить лимит загружаемых архивов с файлами локальных лендингов?
Вам нужно подключиться к своему серверу через терминал и внести изменения в двух директивах:
- Открыть
nano /etc/php/php.ini
и изменить значения в двух строках с 200 на нужное:
upload_max_filesize
post_max_size
Не забудьте сохранить изменения, нажав на ctrl+X
- Открыть
nano /etc/nginx/nginx.conf
и изменить значение в строке
client_max_body_size
Сохранить и выйти. После этого надо перезапустить процессы
service nginx restart
service php72-php-fpm restart
где 72 - это версия вашего php 7.2 (прописываете вашу версию). Команда php -v
поможет узнать версию php на сервере.
# Почему скачанный с партнерки лендинг не ведет на мои офферы?
Многие лендинги содержат защитный js-скрипт, который заменяет все ссылки на оригинальные. Попробуйте сами перейти по трекинг ссылке кампании до лендинга. Наведите курсор на ссылку и убедитесь, что она ведет на трекер.
# Как перебросить все параметры через лендинг?
Решение для лендингов с редиректом.
Решение на PHP:
<a href="http://domain.com/page2?id=123&<?= http_build_query($_GET) ?>">Ссылка</a>
Решение на JS:
<script>document.write('<a href="http://offer.com/?affid=123&' + window.location.search.replace('?', '') + '">Ссылка</a>'</script>
# Как передать параметр, если на лендинге форма заказа?
Для локальных лендингов и с предзагрузкой:
<input type="hidden" name="sub1" value="{subid}">
Для лендинов с редиректом:
<input type="hidden" name="sub1" value="<?php echo urlencode($_GET['sub_id_1']);?>">
# Как не засчитывать переход на оффер?
Добавляйте к ссылке перехода на оффер параметр &exit=1
. Пользователь попадет на оффер, но это не отразится на показателях LP Клики и LP CTR. Пример с макросом {offer}:
<a href="{offer}&exit=1">Offer</a>
# Как вставить subid и другую информацию на лендинге (при использовании редиректа)?
Решение работает только, если трафик сначала в Keitaro и у лендинга выбран способ загрузки "Редирект". Если используется "Предварительно загружать", читайте следующую секцию документации.
Отредактируйте настройки лендинга. Добавьте необходимые параметры и макросы к URL лендинга:
http://landing.com/page?model={device_model}&city={city:ru}&subid={subid}
На лендинге теперь можно вставить полученные параметры:
<html>
<head>
<script type="text/javascript">
function getURLParameter(name) {
return decodeURI(
(RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1] || ''
);
}
</script>
</head>
<body>
Чехлы для телефона <script>document.write(getURLParameter('model'))</script>
в городе <script>document.write(getURLParameter('city'))</script>
</body>
</html>
Или на PHP:
Чехлы для телефона <?php echo htmlentities($_GET['model'])?>
в городе <?php echo htmlentities($_GET['city'])?>
# Как вставить subid и другую информацию на лендинге (при использовании предварительной загрузки)?
Если у лендинга включена предварительная загрузка, то вы можете использовать все макросы прямо в коде лендинга. Пример использования макроса {subid}:
<script type="text/javascript">
var m1_product_id = 123;
var ref = 123;
var script = document.createElement("script");
script.src = "http://m1-shop.ru/send_order/?ref="+ref+"&s={subid}&w="+getC("w")+"&t="+getC("t")+"&p="+getC("p")+"&m="+getC("m")+"&product_id="+m1_product_id+'&out=1';
document.body.appendChild(script);
</script>
# Почему не считаются метрики LP клики, LP CTR и Время продажи?
Чтобы считались эти метрики, необходимо настроить переход на оффер через Keitaro. Т.к. вам нужно добавить офферы в Keitaro, настроить в одном потоке сразу лендинги и офферы. На самом лендинге должен быть установлен код отправки на оффер.
# Как передавать параметры в пиксель FB?
Пример добавление кода для локального лендинга и с предзагрузкой:
<script>
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','//connect.facebook.net/en_US/fbevents.js');
// Insert Your Facebook Pixel ID below.
fbq('init', 'FB_PIXEL_ID');
fbq('track', 'view', {
subid: '{subid}'
})
</script>
# Как подключить Keitaro к lpmotor.ru?
- Зайдите на страницу "Кампании".
- Создайте кампанию. Она нужна, чтобы отслеживать конверсии с лендинга.
- Создайте один поток с действием "Ничего не делать". Иначе клики не будут считаться.
- Зайдите на страницу "Лендинги".
- Добавьте лендинг, заполнив название и URL.
- Нажмите на "Инструкция".
- Выберите вкладку "Скрипт отслеживания".
- Выберите лендинг и кампанию.
- Найдите: Код скрипта отслеживания и Код для страницы благодарности. Они пригодятся нам позже.
- Зайдите в настройки сайта на lpmotor.ru (Настройки > Общие).
- Вставьте код скрипта отслеживания.
- Создайте страницу благодарности. Сейчас это делается через создание еще одного сайта в lpmotor.
- Зайдите в Настройки > Общие. Вставьте снова код скрипта отслеживания и ниже код для страницы благодарности.
- Теперь отредактируйте форму.
- Зайдите во вкладку "Действие" и переключите на "Перейти по ссылке".
- Впишите адрес вашей страницы благодарности и добавьте параметры. Пример,
http://thankyou.lpmotortest.ru/?tid={id_lead}&sub_id_8={name}&sub_id_9={email}&sub_id_10={phone}
В этом случае передаетсяid_lead
в качестве Tid и информацию с формы вsub_id_8, 9 и 10
, чтобы видеть их в отчетах.
# Почему при "Показать HTML" не показываются картинки?
Keitaro показывает страницу не по тому адресу, что вы создавали страницу. Поэтому браузер не может найти картинки. Замените все адреса картинок на абсолютные: http://site.com/folder/image.png.
# Как исключить прямые посещения лендинга?
Решение на PHP:
<?php
if (!isset($_GET['_subid'])) {
header('Location: http://example.com/campaign');
}
?>
Альтернативное решение:
- Передавайте в URL лендинга параметр. Например,
code=123 (http://landing.com/?code=123)
- На лендинге добавьте код в самом начале страницы:
<?php if (!isset($_GET['code']) && $_GET['code'] != '123') { die(); } ?>
# Нужно ли указывать полные пути до файлов в локальном лендинге?
Достаточно указывать относительные. Пример:
<img src="images/photo.png" />
# Нужно ли ставить какой-нибудь код интеграции на локальный лендинг?
Нет. Лендинг уже работает через кампании.
# Почему дублируются клики в статистике при открытии лендинга?
Чаще всего это происходит при включенной опции "Ловить 404 ошибки" в настройках домена. Вы можете её отключить или поискать какие файлы запрашивает ваш лендинг, и которых не было в архиве.
Проверить можно через консоль Javascript.
# Почему в локальных лендингах не работают якоря (#anchor)?
Связано это с тем, что используемый basepath не умеет нормально работать с якорями. Поэтому, решение только одно: не использовать якоря, в скриптах применять class
и id
.
# Можно ли убрать base path
в локальных лендингах?
Нет. Этим тегом указывается путь до всех стилей и картинок лендинга. Если нужно отстраниться от внешнего адреса, используйте действие "Показать HTML" и прописывайте вручную адрес всех файлов стилей и картинок.
# Почему не работает плавный скролл (scroll)?
Такое бывает, если скроллинг настроен через якоря. Например, <a href="#order">
. В случае использования baseHref
, якоря перестают работать и становятся ссылками.
Поэтому Keitaro заменяет якоря на такой js код: onclick="document.location.hash='order0';return false;"
. Это ломает плавный скролл, но оставляет якоря рабочими.
# Вариант починки плавного скролла (scroll)?
Ищем в ленде js код, функцию или отдельный метод, в котором используется $('html, body').animate({…})
.
Метод .ANIMATE.
это встроенный метод для библиотеки jQuery, который выполняет анимацию.
Он используется в методе селектор.Click()
или селектор.on('touch, click)
.
Выглядит так:
селектор.click(function() { $('html, body').animate(positionSelector , timeAnimate); })
Найдите указанный селектор. Это обычно ссылка с классом. Класс указан как этот селектор. Например:
<a class=”to_form” href=”#”>ссылка</a>
Нам надо аккуратно изменить все ссылки, если анимация скролла не работает.
Оборачиваем ссылку в тег span , указываем тегу класс, который был у ссылки. У ссылки убираем все аттрибуты (класс и href).
Получаем в итоге:
<span class="to_form"><a>ссылка</a></span>
Проверяем работу.
# Как записать данные клика в php?
Используйте rawClick
$rawClick->get('parameter')
# Можно ли в коде локального лендинга использовать внешние svg?
Нет, внешние svg не будут работать.
Необходимо вместо <use ...></use>
копировать и вставлять содержимое внешнего svg файла.
# Как показывать время на лендинге
Решение для PHP:
echo (new DateTime(null, new DateTimeZone("Europe/Moscow")))->format("Y-m-d H:i");
или
echo date('Y-m-d H:i');