Что такое атрибуты товаров в WooCommerce и зачем они нужны?
Атрибуты в WooCommerce — это дополнительные характеристики товаров, например цвет, размер, материал. Они используются для удобной фильтрации товаров в магазине и могут улучшить SEO за счет дополнительного релевантного контента на страницах.
Однако многие владельцы магазинов не используют атрибуты эффективно, что ведет к неудобству покупателей и потере трафика.
Диагностика: как понять, что атрибуты не работают правильно
- На странице каталога отсутствуют фильтры по атрибутам, хотя они заданы в товарах.
- Поиск по сайту не учитывает значения атрибутов.
- Страницы архива атрибутов (например, сайт.ru/atribut/znachenie) не индексируются или содержат мало контента.
Шаг 1. Создание и назначение атрибутов в WooCommerce
Перейдите в WooCommerce → Товары → Атрибуты. Создайте атрибут, например "Цвет" и добавьте термины (красный, синий и т.д.).
Для каждого товара в разделе редактирования выберите вкладку "Атрибуты" и назначьте нужные значения.
Пример добавления атрибута через код в functions.php
function wp_add_color_attribute() {
if (!taxonomy_exists('pa_color')) {
wc_create_attribute(array(
'name' => 'Color',
'slug' => 'color',
'type' => 'select',
'order_by' => 'menu_order',
'has_archives' => true,
));
}
}
add_action('init', 'wp_add_color_attribute');Этот код создаст атрибут "Color" с возможностью архивных страниц.
Шаг 2. Включение и настройка виджетов фильтрации по атрибутам
Перейдите в Внешний вид → Виджеты и добавьте виджет "Фильтр по атрибутам" в боковую панель каталога.
Выберите нужный атрибут и настройте параметры отображения (например, выпадающий список или чекбоксы).
Пример использования фильтра через shortcode
[woocommerce_product_filter attribute="pa_color"]Этот шорткод выведет фильтр по атрибуту "Color" на любой странице.
Шаг 3. Оптимизация страниц атрибутов для SEO
По умолчанию WooCommerce создает архивы для каждого атрибута, URL вида site.ru/pa_color/red. Нужно добавить уникальные meta-теги и описания для этих страниц.
Добавьте в functions.php:
add_action('wp_head', function() {
if (is_tax('pa_color')) {
$term = get_queried_object();
echo '<meta name="description" content="Купить товары цвета ' . esc_attr($term->name) . ' в нашем магазине" />';
echo '<title>Товары цвета ' . esc_html($term->name) . ' | Наш магазин</title>';
}
});Для более гибкой SEO настройки можно использовать плагины типа Clearfy Pro, которые позволяют управлять мета-данными терминов так, чтобы избежать дублирования.
Проверка результата после внедрения
- На страницах каталога появились фильтры по атрибутам, они корректно работают и фильтруют товары.
- При переходе по URL архива атрибута отображается список товаров с этим атрибутом.
- В исходном коде страниц архива атрибута видны корректные meta description и title.
- Поиск по сайту учитывает значения атрибутов (если использовалась доработка поиска).
Частые ошибки и как их исправить
- Атрибуты созданы, но фильтры не показываются. Проверьте, активирован ли виджет фильтра по атрибутам и назначены ли атрибуты товарам.
- Архивы атрибутов выводят 404 ошибку. Проверьте настройки постоянных ссылок (Настройки → Постоянные ссылки). Сбросьте их, нажав «Сохранить изменения» без изменений, чтобы обновить rewrite правила.
- SEO meta-теги для страниц атрибутов отсутствуют или дублируются. Используйте плагин SEO или добавляйте мета-теги через хуки
wp_headс проверкойis_tax(). - Поиск не учитывает атрибуты. Стандартный поиск WooCommerce не индексирует атрибуты. Для расширенного поиска используйте плагины типа SearchWP или настройте кастомный WP_Query.
Практические советы по безопасности и производительности
- Не добавляйте слишком много атрибутов и терминов — это увеличит нагрузку на базу и замедлит запросы.
- Для сайтов с большим каталогом используйте кэширование страниц и объектное кэширование, чтобы ускорить выдачу архива атрибутов.
- Регулярно проверяйте и очищайте неиспользуемые атрибуты и термины, чтобы не захламлять базу данных.
- Для SEO мета-тегов используйте проверенные плагины с возможностью контроля страниц атрибутов, например Clearfy Pro (ссылка).
Сравнение способов организации фильтра по атрибутам
| Метод | Плюсы | Минусы | Риски |
|---|---|---|---|
| Встроенный виджет WooCommerce | Простота настройки, нет затрат | Ограниченный функционал, не всегда удобен | Может замедлять страницы при большом объеме данных |
| Плагины фильтрации (например, FacetWP) | Гибкость, ajax-фильтрация, поиск по атрибутам | Платные, требует настройки | Совместимость с темой и плагинами |
| Кастомные фильтры через код | Максимальный контроль, легковесность | Требует навыков разработки | Ошибки в коде могут нарушить работу сайта |