К основному содержимому

Affise < - > WooCommerce

Автор: Daria Mamchenkova

В этом руководстве объясняется, как интегрировать Affise Web SDK с вашим магазином WooCommerce для отслеживания кликов аффилиатов и конверсий (заказов) без перенаправлений.

Что такое Affise Web SDK?

Affise Web SDK — это библиотека JavaScript, которая отслеживает партнерские кампании прямо на вашем сайте. Она предлагает:

  • Отсутствие перенаправлений: более быстрая загрузка страниц и лучший пользовательский опыт.

  • Надежное отслеживание: точно фиксирует клики и конверсии.

  • Соблюдение конфиденциальности: работает в соответствии с нормами защиты данных.

🔍 Узнайте больше об Affise Web SDK здесь.

Требования:

  • Учетная запись Affise с настроенным оффером для вашего магазина WooCommerce. Убедитесь, что у вас есть ID оффера и вы знаете трекинг домен Affise (например, https://YOUR_DOMAIN.g2afse.com или подобный) для скрипта Web SDK.

  • Магазин WooCommerce (доступ к админке WordPress), в котором можно добавлять пользовательский код или плагины.

  • Тестовая партнерская ссылка для вашего оффера (содержащая параметры offer_id и aff_id) для имитации клика партнера.

Алгоритм интеграции:

Процесс интеграции включает три этапа:

Добавьте скрипт Affise Web SDK в WooCommerce

Сначала добавьте скрипт Affise Web SDK на страницы вашего сайта WooCommerce.


Скрипт инициализирует глобальный объект ASDK, используемый для отслеживания. Вам следует добавить его на все страницы (обычно в раздел <head> ) для того, чтобы он фиксировал клики партнеров на целевой странице и конверсии на странице подтверждения заказа.

Чтобы добавить скрипт, сделайте следующее:

  1. Используйте плагин для вставки скриптов в заголовок (например, Insert Headers and Footers или Code Snippets). Это позволяет избежать редактирования файлов темы и работает с любой темой. В качестве альтернативы вы можете вручную добавить тег скрипта в файл header.php вашей темы (желательно через дочернюю тему, чтобы сохранить изменения).

2. Получите URL Web SDK. Обычно
он имеет формат https://<your-tracking-domain>/websdk.js.

⚠️ Замените <your-tracking-domain> на домен, предоставленный Affise для отслеживания.

3. Вставьте скрипт в раздел Scripts in Header вашего плагина или непосредственно перед </head> в вашей теме.

<!-- Affise Web SDK script -->
<script src="https://YOUR_TRACKING_DOMAIN.g2afse.com/websdk.js"></script>
<script>
document.addEventListener('DOMContentLoaded', function() {
// Read affiliate link parameters from the URL
const offerId = ASDK.urlParameter('offer_id');
const affId = ASDK.urlParameter('aff_id');
// If this is an affiliate click (parameters present), record the click
if (offerId && affId) {
ASDK.click({
offer_id: offerId,
affiliate_id: affId,
user_agent: navigator.userAgent // optional, helps capture device info
})
.then(clickId => {
console.log('Affise click tracked:', clickId);
// Store offer ID for later use (e.g., conversion tracking)
localStorage.setItem('affise_offer_id', offerId);
})
.catch(error => {
console.error('Affise click tracking error:', error.message);
});
}
});
</script>

Строка <script src=".../websdk.js"> загружает скрипт Affise SDK с вашего трекинг домена. После загрузки SDK доступен глобально как ASDK.

Встроенный скрипт выполняет следующие функции:

  • Проверяет наличие offer_id и affiliate_id в URL.

  • Вызывает ASDK.click() для регистрации клика в Affise (без перенаправления).

  • Сохраняет offer_id в localStorage для дальнейшего использования (например, для отслеживания конверсий).​

Настройка отслеживания конверсий

После фиксации клика отслеживайте конверсии на странице WooCommerce «Order Received» (страница благодарности).


Метод SDK ASDK.conversion({...}) отправляет событие конверсии в Affise.

Чтобы настроить отслеживание конверсий, выполните следующие действия:

1. Установите плагин для добавления кода на страницу действия (страницу «Order Received»)

🔎 Для добавления кода можно использовать плагин WordPress Code snippets.

2. Перейдите в Code snippets > Add new > Add your custom code:

Фрагмент кода PHP:

3. Вставьте приведенный ниже код в текстовое поле:

Добавьте этот фрагмент PHP:

add_action('woocommerce_thankyou', 'affise_track_conversion', 10, 1);
function affise_track_conversion($order_id) {
if (!$order_id) return;
$order = wc_get_order($order_id);
if (!$order) return;

$order_total = $order->get_total();
$order_currency = $order->get_currency();
$order_number = $order->get_order_number();


?>
<script>
document.addEventListener('DOMContentLoaded', function () {
const orderDetails = {
id: "<?php echo esc_js($order_number); ?>",
total: <?php echo number_format($order_total, 2, '.', ''); ?>,
currency: "<?php echo esc_js($order_currency); ?>",
};

let offerId = ASDK.urlParameter('offer_id');
if (!offerId) {
offerId = localStorage.getItem('affise_offer_id');
}
const clickId = offerId ? ASDK.clickId(offerId) : null;

if (clickId && offerId) {
ASDK.conversion({
click_id: clickId,
offer_id: offerId,
status: "1",
sum: orderDetails.total.toString(),
order_currency: orderDetails.currency,
comment: "Order " + orderDetails.id,
})
.then(() => {
console.log("Affise conversion tracked successfully");
})
.catch(error => {
console.error("Affise conversion tracking error:", error);
});
} else {
console.log("Affise conversion not fired (no affiliate data).");
}
});
</script>
<?php
}

Как это работает:

  • Собирает ID заказа, валюту, общую сумму и продукты.

  • Создает фрагмент кода JavaScript на странице благодарности.

  • Извлекает сохраненный ID клика с помощью ASDK.clickId(offer_id).

  • Запускает ASDK.conversion(), если ID клика действителен.

Установите фрагмент кода с помощью:

  • Плагин Code Snippets (рекомендуется).

  • Или напрямую в файле functions.php (при использовании дочерней темы).

Проверьте интеграцию

Чтобы убедиться, что все работает правильно, протестируйте интеграцию:

  1. Настройте тест:

    1. Включите Cash on Delivery в WooCommerce.

    2. Добавьте тестовый товар (например, Тестовый товар, 10 евро).

    3. Используйте тестовую партнерскую ссылку, например:

  2. Протестируйте процесс:

    1. Откройте ссылку для отслеживания в режиме инкогнито.

    2. Проверьте в консоли, отслеживается ли клик Affise: [clickId]

    3. Сделайте заказ.

    4. На странице благодарности проверьте, что конверсия Affise отслежена успешно.

    5. В админ-панели Affise > Статистика > Конверсии убедитесь, что клик и конверсия зарегистрированы.

Устранение неполадок

Проблема

Возможное решение

Нет клика

В URL отсутствует offer_id или указан неверный домен скрипта

Нет конверсии

Не найден click_id или ошибки JS

Конверсия не отображается

Задержка, неверный ID или отклонение по таргетингу


По всем возникшим вопросам обращайтесь в службу поддержки клиентов Affise по электронной почте: [email protected].

Нашли ответ на свой вопрос?