Плагин YARPP (Yet Another Related Posts Plugin) хорошо известен в сообществе WordPress как мощный инструмент для автоматического подбора связанных записей. Но его возможности далеко не ограничиваются блогами и новостными сайтами — YARPP отлично подходит и для WooCommerce, чтобы автоматически показывать покупателям связанные товары, повышая конверсию и средний чек.
Как работает подбор связанных товаров в WooCommerce с помощью YARPP
По умолчанию WooCommerce предлагает вкладку "Связанные товары" (Upsells и Cross-sells), но она требует ручного заполнения для каждого товара. Это неудобно и долго, особенно при большом ассортименте. YARPP позволяет автоматически подобрать похожие товары, основываясь на общих категориях, тегах и пользовательских полях.
YARPP анализирует содержание и метаданные товаров, вычисляет схожесть и выводит список релевантных товаров. При правильной настройке это повышает пользовательский опыт и способствует росту продаж без дополнительной ручной работы.
Установка и базовая настройка YARPP для WooCommerce
Для начала установите и активируйте плагин YARPP из репозитория WordPress. После активации перейдите в Настройки > Related Posts (YARPP).
- В разделе "Вывод" выберите типы записей для показа — обязательно отметьте "Товары" (products).
- В "Типах записей для поиска" также выберите "Товары", чтобы поиск велся по товарам.
- Настройте критерии подбора — обычно достаточно использовать категории и теги товаров.
- Выберите шаблон вывода: HTML или кастомный.
После сохранения настроек YARPP начнет автоматически выводить связанные товары на страницах товаров WooCommerce.
Кастомизация подбора связанных товаров: фильтры и хуки YARPP
Чтобы улучшить качество подбора и адаптировать его под специфику интернет-магазина, можно использовать хуки YARPP для изменения логики выбора связанных товаров.
Фильтрация результатов по дополнительным мета-данным
Например, если в вашем магазине есть товары с разными брендами, можно ограничить подбор связанными только товарами того же бренда. Для этого добавим фильтр в файл functions.php вашей темы:
function yarpp_filter_by_brand($where, $original_query) {
global $wpdb;
if (isset($original_query['post_type']) && $original_query['post_type'] === 'product') {
$current_brand = get_post_meta($original_query['post_id'], '_product_brand', true);
if ($current_brand) {
$where .= $wpdb->prepare(" AND EXISTS (
SELECT 1 FROM $wpdb->postmeta pm
WHERE pm.post_id = p.ID AND pm.meta_key = '_product_brand' AND pm.meta_value = %s
)", $current_brand);
}
}
return $where;
}
add_filter('yarpp_related_where', 'yarpp_filter_by_brand', 10, 2);Этот код добавляет условие к SQL-запросу YARPP, чтобы показывать только товары того же бренда, что и текущий.
Изменение шаблона вывода связанных товаров
Чтобы вывести связанные товары в удобном формате, можно использовать собственный шаблон. Создайте файл yarpp-template-woocommerce.php в папке вашей темы и добавьте туда код:
<ul class="yarpp-products">
<?php foreach ($related_posts as $post): setup_postdata($post); ?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
<?php echo woocommerce_get_product_thumbnail(); ?>
<span class="price"><?php echo $post->get_price_html(); ?></span>
</li>
<?php endforeach; wp_reset_postdata(); ?>
</ul>После этого в настройках YARPP выберите этот шаблон для отображения связанных товаров.
Оптимизация производительности YARPP в WooCommerce
При большом каталоге товаров запросы YARPP могут замедлять сайт. Вот несколько рекомендаций для оптимизации:
- Кэширование результатов. Используйте плагины-кэшировщики или встроенный кэш YARPP.
- Ограничьте количество связанных товаров. В настройках YARPP задайте разумный лимит, например 5.
- Индексация базы данных. Проверьте индексы в таблицах
wp_postsиwp_postmetaдля ускорения выборок. - Используйте транзиенты. Для кэширования результатов выборки можно использовать WordPress транзиенты, сохраняя массив связанных товаров.
Пример кода с транзиентом:
function yarpp_get_cached_related_products($post_id) {
$cache_key = 'yarpp_related_' . $post_id;
$related = get_transient($cache_key);
if ($related === false) {
$related = yarpp_get_related($post_id); // Ваша функция получения связанных товаров
set_transient($cache_key, $related, 12 * HOUR_IN_SECONDS);
}
return $related;
}Дополнительные плагины и инструменты для улучшения подбора товаров
Для более продвинутого функционала рассмотрите интеграцию YARPP с другими плагинами:
- Clearfy Pro — оптимизация и управление кэшированием, что поможет ускорить работу YARPP.
- WPRemark — для улучшения отзывов и рейтингов, которые тоже могут влиять на подбор товаров.
Использование этих плагинов вместе с YARPP позволит сделать подбор товаров более качественным и быстрым.
Выводы и практические советы по внедрению YARPP в WooCommerce
Подбор связанных товаров — важный элемент успешного интернет-магазина. YARPP предоставляет гибкие возможности для автоматизации этого процесса без необходимости ручной работы. Однако важно правильно настроить фильтры и шаблоны вывода, а также позаботиться об оптимизации производительности.
Не забывайте тестировать подбор на разных категориях товаров, чтобы убедиться, что релевантность соответствует ожиданиям покупателей. В сочетании с другими инструментами, такими как Clearfy Pro, YARPP станет мощным помощником для увеличения продаж и улучшения юзабилити вашего магазина.