# Общая информация
- О лендингах
- Создание лендинга
- Типы лендингов
- Подключение оффера на лендинге
- Подключение оффера на локальном лендинге и с предзагрузкой
- Подключение нескольких офферов на локальном лендинге и с предзагрузкой
- Подключение оффера на двухстраничном локальном лендинге
- Подключение оффера на лендинге с редиректом
- Подключение нескольких офферов на лендинге с редиректом
- Подключение оффера как действие в лендинге
- Использование формы заказа на локальном лендинге
- Настройка формы на двухстраничном локальном лендинге
- Подключение внешнего сайта через KClient PHP
- Подключение офферов к сайту, работающему через KClient PHP
- Подключение нескольких офферов к сайту, работающему через KClient PHP
- Подключение внешнего сайта через скрипт отслеживания
- Подключение оффера к сайту, который работает через скрипт отслеживания
- Подключение нескольких офферов к сайту, который работает через скрипт отслеживания
- Отправка постбеков
- Отправка постбеков с локального лендинга (форма)
- Отправка постбеков с локального лендинга (кнопка)
- Отправка постбеков с лендинга после редиректа
- Отправка постбеков с сайта, где стоит KClient PHP
- Отправка постбеков с сайта, где стоит скрипт отслеживания
- Обновление параметров клика с лендинга
- Обновление параметров клика из браузерной строки
- Обновление параметров клика на JS
- Пример update_tokens через скрипт отслеживания
- Пример вызова update_tokens на PHP
# О лендингах
Лендинги являются первыми страницами, которые видят пользователи на своем пути к офферу. Иногда такие лендинг-страницы называют прелендингами. В тоже время, лендинги могут быть конечными страницами и даже отправлять лиды в трекер. Поддержка разных типов лендингов позволяет подключать как свою лендинг страницу c HTML файлом, так и внешний сервис.
# Создание лендинга
# Название
Название вашего лендинга.
# Группа
К какой группе принадлежит лендинг.
# Способ показа
- "Локальный" (Рекомендуемый) — возможность подгрузить архив вашего лендинга, который автоматически распакуется в корень трекера и будет работать без редиректа. Для корректной загрузки упакуйте файлы своего лендинга в архив zip.
- "Редирект" — переход на лендинг осуществляется редиректом;
- "Предварительно загружать" — лендинг скачивается и отображается сразу по адресу кампаний. Редирект при этом не используется. При этом способе можно использовать макросы в коде лендинга.
- "Действие" — переход на лендинг осуществляется редиректом с выполнением определенного действия;
# Адрес лендинга (URL)
Полный адрес до вашего лендинга, например http://site.ru/page1.html
. К адресу вы можете дописать параметры и макросы.
# Типы лендингов
# Локальный лендинг
Лендинг этого типа открывается быстрее, чем с предзагрузкой и без использования редиректов.
Для создания требуется архив со всеми файлами лендинг-страницы. В архиве обязательно должен присутствовать файл index.html
или index.php
(если разрешен в настройках). Именно этот файл будет открываться при запуске лендинга.
Требования к лендингам:
- Пути в атрибутах src и href должны быть относительные. Неправильно:
<img src="/home.png"/>
. Правильно:< src="home.png"/>
. - Не должно быть внутренних js-редиректов. Пример внутреннего редиректа
window.location = 'index.html'
. - Не должно быть js-скриптов, использующих якоря. Например, плавный скролл
< a class="slow-scroll" href="#form2">order</a>
- работать не будет.
Дополнительные требования к лендингам на PHP:
- В коде лендинга не должны использоваться функции
header(), exec(), system(), job_start(), eval()
. - Загрузка дополнительных скриптов в
include()
иrequire()
должны быть по абсолютным путям. Пример,require_once dirname(__FILE__) . ‘/lib.php’;
.
# Лендинг с предзагрузкой
Лендинг этого типа может располагаться на любом сервере. Keitaro загружает его сам и выводит содержимое пользователю. Если лендинг содержит ссылки на другие страницы, то они будут открываться с оригинального адреса.
# Лендинг с редиректом
При срабатывании такого лендинга пользователь будет отправлен редиректом на его URL. В адресе автоматически добавляются параметры _subid
и _token
. Они нужны для работы постбеков и ссылок на офферы.
# Лендинг, выполняющий действие
Когда в потоке задан такой лендинг, то будет выполняться заданное действие. Например, если выбрано действие "Показать HTML", то пользователь увидит HTML страницу.
# Лендинг на WordPress
Смотрите страницу WordPress plugin.
# Подключение оффера на лендинге
Чтобы на сайте работали переходы на оффер, необходимо добавить специальный код в каждую ссылку сайта. Чтобы ссылка оффера работала, должен сработать поток, где будут выбраны нужные офферы. Ниже описание того, как подключаются офферы в зависимости от типа лендинга.
# Подключение оффера на локальном лендинге и с предзагрузкой
Чтобы создать ссылку на оффер, достаточно использовать макрос {offer}
. Пример кнопки:
<a class="btn btn-success" href="{offer}">Ссылка</a>
Также, читайте статьи:
Локальный лендинг: форма заказа и отправка лидов в трекер. Часть 1
Локальный лендинг: кнопка перехода на оффер. Часть 2
# Подключение нескольких офферов на локальном лендинге и с предзагрузкой
Если у вас несколько офферов, то можно делать уточнение какой оффер должен открываться:
<a class="btn btn-success" href="{offer:1}">Ссылка</a>
<a class="btn btn-success" href="{offer:2}">Ссылка</a>
1 и 2 — это примеры ID офферов.
# Подключение оффера на двухстраничном локальном лендинге
Предположим, что у нас 2 страницы:
- индексная
index.html
- и с оффером
page2.php
В index.html обновите ссылки на page2.php, добавив передачу _token :
<a href="page2.php?_token={token}">Link to Page2</a>
На странице page2.php ссылка оффера создается таким образом:
<a href="//<?php echo $_SERVER['HTTP_HOST'] . '/?_lp=true&_token=' . urlencode($_GET['_token']) ?>">Offer</a>
Для мультиофферного лендинга:
<a href="//<?php echo $_SERVER['HTTP_HOST'] . '/?_lp=true&_token=' . urlencode($_GET['_token']) ?>&offer_id=1">Offer 1</a>
<a href="//<?php echo $_SERVER['HTTP_HOST'] . '/?_lp=true&_token=' . urlencode($_GET['_token']) ?>&offer_id=2">Offer 2</a>
<a href="//<?php echo $_SERVER['HTTP_HOST'] . '/?_lp=true&_token=' . urlencode($_GET['_token']) ?>&offer_id=3">Offer 3</a>
# Подключение оффера на лендинге с редиректом
При использовании редиректа, к адресу лендинга добавляется два обязательных параметра _token
и _subid
. Чтобы создать нужную ссылку оффера, лучше всего взять готовый код из блока, что видите при создании и редактировании лендинга.
# Подключение нескольких офферов на лендинге с редиректом
К ссылкам нужно добавлять параметр offer_id
. Пример:
<a href="http://tracker.com/?_lp=true&_token=<?php echo urlencode($_GET['_token'])?>&offer_id=1">Offer link 1</a>
<a href="http://tracker.com/?_lp=true&_token=<?php echo urlencode($_GET['_token'])?>&offer_id=2">Offer link 2</a>
# Подключение оффера как действие в лендинге
В действиях можете использовать макрос {offer}
. Например, в действии "Показать HTML" можно поставлять ссылку оффера прямо в код.
# Использование формы заказа на локальном лендинге
Если вы отправляете лиды через скрипт, то вам необходимо в лидах передавать еще и subid клика. В локальных лендингах с предзагрузкой можно подставить subid макросом {subid}:
<input type="hidden" name="subid" value="{subid}" />
Потом в обработчике формы ловите в параметре $_POST['subid']
(если форма передается через post метод).
# Настройка формы на двухстраничном локальном лендинге
Предположим, что у нас есть две страницы:
- Индексная страница, index.html (или index.php)
- Страница с формой заказа, order.php
На индексной странице нужно изменить ссылки, добавив ?_subid={subid}:
<a href="order.php?_subid={subid}">BUY</a>
Теперь в коде order.php, нужно добавить в самое начало:
session_start();
if (isset($_GET['_subid'])) {
$_SESSION['_subid'] = $_GET['_subid'];
}
Этот код будет принимать параметр _subid
и сохранять в сессию.
Теперь вы можете в коде отправки данных с формы подставлять этот параметр из сессии. Пример:
$params = array(
'name' => $post['name'],
'phone' => $post['phone'],
'country' => $post['country'],
'sub1' => $_SESSION['_subid'], // ←
);
# Подключение внешнего сайта через KClient PHP
Этот способ позволяет принимать трафик напрямую на сайт и передавать данные по KClient PHP в Keitaro.
Рассмотрим пример подключения с использованием готовой библиотеки KClient PHP:
- Создайте кампанию;
- Создайте лендинг с адресом вашего сайта;
- Создайте поток со схемой "Лендинг и офферы". Выберие лендинг (сайт) и офферы;
- Перейдите на страницу "Интеграция" (Дополнительно > Интеграция);
- Выберите "KClient PHP";
- Подключите код к вашему лендингу согласно инструкции.
# Подключение офферов к сайту, работающему через KClient PHP
- Удалите в коде строку
$client->execute()
. Она вызывает моментальный редирект на оффер; - Такой код выведет ссылку на оффер
<a href="<?php echo $client->getOffer()?>">Offer Link</a>
; - Проверьте работу лендинга.
# Подключение нескольких офферов к сайту, работающему через KClient PHP
Аналогично использованию оффера, добавляется только параметр offer_id
<a href="<?php echo $client->getOffer(array('offer_id' => 1))?>">Offer link 1</a>
<a href="<?php echo $client->getOffer(array('offer_id' => 2))?>">Offer link 2</a>
# Подключение внешнего сайта через скрипт отслеживания
Этот способ подходит для сайтов на CMS. Код установки скрипта отслеживания берется на странице кампании, во вкладке Интеграции.
Подробнее о скрипте отслеживания читайте на странице Скрипт отслеживания.
# Подключение оффера к сайту, который работает через скрипт отслеживания
Разметите в коде сайта ссылку с макросом {offer}
. Пример:
<a href="{offer}">Offer link</a>
Чтобы ссылка работала, потоки кампании должны быть с офферами.
Подробнее о скрипте отслеживания читайте на странице Скрипт отслеживания.
# Подключение нескольких офферов к сайту, который работает через скрипт отслеживания
Вы можете указывать ID оффера в ссылках:
<a href="{offer}&offer_id=1">Offer link 1</a>
<a href="{offer}&offer_id=2">Offer link 2</a>
# Отправка постбеков
Способы отправки постбеков отличаются от того, какой тип лендинга используется.
# Отправка постбеков с локального лендинга (форма)
Если на лендинге есть форма, то нужно добавить дополнительный input:
<form action="send.php" method="post">
<input type="hidden" name="subid" value="{subid}" />
</form>
Теперь можно отправлять в скрипте send.php:
$url = 'http://POSTBACK_URL?payout=100&status=sale&subid=' . urlencode($_POST['subid']);
file_get_contents($url);
Более подробная настройка описана в статье Локальный лендинг: форма заказа и отправка лидов в трекер.
# Отправка постбеков с локального лендинга (кнопка)
Если просто кнопка, то добавляется subid
так:
<a class="btn btn-success" href="thanks.php?subid={subid}">BUY</a>
Теперь можно отправлять в скрипте thanks.php:
$url = 'http://POSTBACK_URL?payout=100&status=sale&subid=' . urlencode($_GET['subid']);
file_get_contents($url);
Читайте также статью Сбор конверсий формы скриптом отслеживания.
# Отправка постбеков с лендинга после редиректа
Смотрите страницу Отправка постбека с сайта в Keitaro.
# Отправка постбеков с сайта, где стоит KClient PHP
Смотрите страницу KClient PHP.
# Отправка постбеков с сайта, где стоит скрипт отслеживания
Смотрите страницу Отправка конверсий.
# Обновление параметров клика с лендинга
Параметры можно обновлять несколькими способами:
- В постбеке. Смотрите страницу Прием постбеков;
- В ссылке оффера. Например,
{offer}&sub_id_1=123
; - Через специальный адрес update_tokens. Примеры ниже.
# Обновление параметров клика из браузерной строки
Обновление параметров клика можно вызывать из браузера, через конструкцию:
http://domnain.com/?_update_tokens=1&sub_id=REPLACE&sub_id_1=REPLACE&sub_id_2
# Обновление параметров клика на JS
<script type="text/javascript">
kUrl='http://keitaro_url/';
function update_tokens(subId, param, value) {
var img = document.createElement("img");
img.src= kUrl + '?_update_tokens=1&sub_id=' + subId + '&'+ param + '=' + value + '&return=img';
img.height=0;
img.width=0;
document.getElementsByTagName("body")[0].appendChild(img);
}
</script>
Теперь можете вызвать:
update_tokens('{subid}', 'sub_id_8', 'test')
Здесь {subid}
- это subid текущего клика. Если выполнять в html коде локального лендинга, значение будет автоматически подставляться. При тестировании вставляйте значение вручную.
# Пример update_tokens через скрипт отслеживания
Этот метод работает, только если на сайте стоит скрипт отслеживания:
KTracking.update({sub_id_8: 'test'})
# Пример вызова update_tokens на PHP
session_start();
function updateParams($subId, $params) {
$kUrl = 'TRACKER_URL';
$url = $kUrl . '?_update_tokens=1&sub_id=' . urlencode($subId) . '&' . http_build_query($params);
$result = file_get_contents($url);
// echo $result;
}
Замените TRACKER_URL на адрес вашего трекера.
Теперь можете вызвать updateParams('sub_id', [params])
;. Пример:
updateParams($_SESSION['sub_id'], array('sub_id_1' => 'info@gmail.com'))