Автоматическое отображение affiliate продуктов в блоках WordPress — отличное решение для повышения конверсии и удобства управления партнерскими ссылками. В этой статье подробно разберем, как реализовать такую функциональность, используя как готовые плагины, так и собственные кодовые решения.
Почему важно автоматизировать отображение affiliate продуктов в блоках
Ручное добавление партнерских ссылок и продуктов в записи и страницы занимает много времени и увеличивает риск ошибок. Автоматизация решает эти задачи, позволяя выводить актуальные офферы, цены и отзывы без лишних усилий. Кроме того, автоматическое обновление данных помогает поддерживать актуальность контента, что положительно сказывается на SEO и доверии пользователей.
Автоматизация особенно важна для сайтов с большим количеством affiliate продуктов, где ручное управление становится непрактичным.
Выбор плагина для автоматического вывода affiliate продуктов
Для WordPress существует несколько плагинов, которые позволяют легко вставлять affiliate продукты в блоки через Gutenberg или классический редактор, а также автоматически обновлять информацию о товарах.
Плагины для автоматизации affiliate продуктов
- WPGPT — помимо генерации контента, способен автоматически вставлять affiliate ссылки и описания продуктов в заданные блоки. Поддерживает кастомизацию шаблонов.
- Expert Review — отлично подходит для автоматического отображения отзывов и рейтингов affiliate продуктов, которые можно вставить в блоки на странице.
- My Popup — позволяет создавать всплывающие окна с партнерскими предложениями, но может быть адаптирован и для блоков.
Выбор зависит от задач: если нужен просто вывод продуктов — достаточно WPGPT или специализированного affiliate плагина, если важны отзывы — Expert Review.
Создание собственного блока для автоматического вывода affiliate продуктов
Если готовые решения не подходят, можно создать собственный блок Gutenberg, который будет динамически выводить affiliate продукты из базы данных или внешнего API.
Регистрация блока и вывод продуктов
Для начала нужно зарегистрировать блок с помощью функции register_block_type. Ниже пример простого блока, который выводит список продуктов с названием и ссылкой.
function wpaffiliate_register_affiliate_products_block() {
wp_register_script(
'wpaffiliate-affiliate-products-block',
plugins_url('affiliate-products-block.js', __FILE__),
array('wp-blocks', 'wp-element', 'wp-editor'),
filemtime(plugin_dir_path(__FILE__) . 'affiliate-products-block.js')
);
register_block_type('wpaffiliate/affiliate-products', array(
'editor_script' => 'wpaffiliate-affiliate-products-block',
'render_callback' => 'wpaffiliate_render_affiliate_products_block'
));
}
add_action('init', 'wpaffiliate_register_affiliate_products_block');
function wpaffiliate_render_affiliate_products_block($attributes) {
$products = wpaffiliate_get_affiliate_products();
if (empty($products)) {
return '<p>Продукты не найдены</p>';
}
$output = '<ul class="wpaffiliate-products-list">';
foreach ($products as $product) {
$output .= sprintf('<li><a href="%s" target="_blank" rel="nofollow">%s</a></li>', esc_url($product['url']), esc_html($product['title']));
}
$output .= '</ul>';
return $output;
}
function wpaffiliate_get_affiliate_products() {
// Здесь можно получить продукты из базы или API
return array(
array('title' => 'Товар 1', 'url' => 'https://example.com/product1?affid=123'),
array('title' => 'Товар 2', 'url' => 'https://example.com/product2?affid=123'),
);
}Этот код создаёт блок, который при рендеринге выводит список партнерских продуктов.
Создание файла affiliate-products-block.js
В JavaScript части блока можно добавить настройки и интерфейс для выбора категорий или фильтров продуктов.
const { registerBlockType } = wp.blocks;
const { InspectorControls } = wp.blockEditor;
const { PanelBody, SelectControl } = wp.components;
const { useState, useEffect } = wp.element;
registerBlockType('wpaffiliate/affiliate-products', {
title: 'Affiliate продукты',
icon: 'cart',
category: 'widgets',
attributes: {
category: { type: 'string', default: '' }
},
edit: (props) => {
const { attributes, setAttributes } = props;
return (
<>
<InspectorControls>
<PanelBody title="Настройки">
<SelectControl
label="Категория"
value={attributes.category}
options={[
{ label: 'Все', value: '' },
{ label: 'Категория 1', value: 'cat1' },
{ label: 'Категория 2', value: 'cat2' },
]}
onChange={(value) => setAttributes({ category: value })}
/>
</PanelBody>
</InspectorControls>
<p>Здесь будут отображаться affiliate продукты категории: {attributes.category || 'Все'}</p>
</>
);
},
save: () => {
return null; // Рендер на сервере
}
});Автоматическое обновление данных affiliate продуктов
Чтобы данные о продуктах были всегда актуальными, нужно настроить регулярный импорт или обновление с помощью CRON задач и API партнерских программ. В WordPress это можно сделать через WP-Cron.
Пример добавления CRON задачи для обновления продуктов:
function wpaffiliate_update_products_cron() {
// Логика обновления продуктов из API
$products = wpaffiliate_fetch_products_from_api();
// Сохраняем в базу
update_option('wpaffiliate_products', $products);
}
add_action('wpaffiliate_update_products_event', 'wpaffiliate_update_products_cron');
if (!wp_next_scheduled('wpaffiliate_update_products_event')) {
wp_schedule_event(time(), 'hourly', 'wpaffiliate_update_products_event');
}Таким образом, продукты будут автоматически обновляться каждый час без участия пользователя.
Защита affiliate ссылок и улучшение UX
Чтобы избежать потери комиссий и повысить безопасность, стоит маскировать affiliate ссылки и добавлять редиректы через PHP. Пример простого редиректа с маскировкой:
function wpaffiliate_redirect_affiliate_link() {
if (isset($_GET['aff_link'])) {
$url = esc_url_raw($_GET['aff_link']);
wp_safe_redirect($url);
exit;
}
}
add_action('template_redirect', 'wpaffiliate_redirect_affiliate_link');В блоках можно затем использовать ссылки вида https://вашсайт.ru/?aff_link=https://партнерскаяссылка, чтобы скрыть настоящие URL.
Вывод
Автоматическое отображение affiliate продуктов в блоках WordPress — мощный инструмент для повышения эффективности партнерских сайтов. Вы можете использовать готовые плагины, такие как WPGPT или Expert Review, либо реализовать собственное решение с кастомными блоками и CRON обновлениями. Не забывайте про защиту ссылок и удобство для пользователей — это напрямую влияет на доход вашего affiliate сайта.