WooCommerce SEO — это не «поставить Yoast на WordPress и открыть все товары». Это договор витрины: какие объекты плагина становятся документами Поиска, а какие остаются кнопками корзины. Архитектуру самого WordPress закрывает раздел WordPress SEO. Как должна выглядеть карточка SKU — на странице SEO карточек товаров. Здесь слой магазина: страница shop, тип product, таксономии product_cat и product_tag, архивы атрибутов pa_* и служебные endpoint’ы.
Общая рамка каталога — в SEO интернет-магазина: категория выбирает тип, карточка покупает модель, фильтр без спроса не документ. WooCommerce только задаёт, какими путями и типами записей этот договор материализуется.
Четыре объекта, которые плагин делает URL
Woo регистрирует витрину поверх страниц WordPress. В индекс обычно должны попасть только адреса со своим набором SKU или одним оффером.
- Страница магазина. WooCommerce → Настройки → Товары → «Страница магазина». Это обычная страница WP, которую плагин подменяет циклом товаров. Слаг страницы и есть корень витрины, часто
/shop/. Второй «каталог» с тем же циклом — дубль корня, не расширение охвата. - Товар — запись типа
product. Один опубликованный товар = один канонический путь. Variable product с переключателем цвета на том же адресе остаётся одним документом: это контур вариаций, не повод открывать каждый атрибут отдельным URL. - Категория товара — термин
product_cat. База по умолчанию —product-category. Индексируют ветку, у которой есть тип товара и свой набор карточек. Общие правила веток — в SEO категорий интернет-магазина, не в настройке ЧПУ. - Архив атрибута — пути вроде
/pa_color/red/. У атрибута в Woo есть галочка «Включить архивы». Если галочка стоит, а спроса и своего текста нет, робот обходит тонкие копии категории.
ЧПУ: один товар — один путь
Настройки → Постоянные ссылки → блок «Постоянные ссылки товара». Woo предлагает четыре схемы: «По умолчанию» (?post_type=product&p=ID), «Основа магазина», «Основа магазина и метки категории», произвольная база (часто /product/).
Схема «магазин + категория в пути» ломается, когда товар висит в нескольких product_cat. Без первичной категории тема или плагин может отдать два пути на один ID. Каноникал и sitemap обязаны показать один. Не чините это вторым SEO-плагином: один слой title / canonical / sitemap — правило WordPress SEO.
Базы product-category и product-tag меняйте до индекса, не после. Смена префикса после обхода даёт массовый 404, если не оставить 301 со старого корня.
Что закрыть в первую неделю
Woo сам помечает noindex у корзины, оформления заказа и «Мой аккаунт». Это служебные экраны, они не закрывают поисковую задачу. Проверьте, что тема или второй плагин не сняли noindex и не добавили эти пути в карту.
Отдельно проверьте обход, который Woo плодит ссылками цикла:
?add-to-cart=ID— параметр корзины. Каноникал должен вести на чистый товар или категорию, иначе робот копит копии с кнопкой.?orderby=price,?orderby=popularity— сортировка витрины, не отдельные документы. Тот же класс, что и фильтры без спроса.- Поиск Woo и обычный
/?s=— служебная выдача, не категория. - Пустые архивы атрибутов и меток: снимите «Включить архивы» или поставьте noindex, если среза нет в запросах.
Карта и разметка: один источник
WooCommerce не рисует отдельный SEO-sitemap. Товары попадают в карту ядра WordPress (wp-sitemap-posts-product-*.xml) или в нарезку Yoast / Rank Math. Две карты сразу — развилка из Sitemap WordPress: оставьте один индекс и выкиньте из него корзину, checkout, скрытые товары и архивы без спроса.
JSON-LD товара Woo собирает класс WC_Structured_Data: Product, Offer, иногда AggregateRating и хлебные крошки. Второй Product от SEO-плагина на той же карточке расходится с витриной. Правило полей — на странице микроразметки Product: один слой, цена и наличие как на экране. Модуль Woo в Yoast или Rank Math оставляйте, только если он заменяет встроенный граф, а не дублирует его.
Видимость в каталоге и живой URL
У товара Woo есть видимость: «Каталог и результаты поиска», «Только каталог», «Только поиск», «Скрытый». «Скрытый» убирает карточку из циклов, но адрес часто остаётся ответом 200. Если SKU нельзя купить и нельзя найти — снимите из индекса или переведите в черновик. Иначе карта врёт живым URL.
Галочка «Скрывать товары, которых нет в наличии» (Настройки → Товары → Запасы) прячет SKU из циклов магазина и категорий. Живой URL карточки при этом может остаться. Решение по такому адресу — на странице товаров без наличия, не «noindex всем Woo».
Если каталог системно врёт путями, архивами атрибутов и двумя Product на карточке, постановка аудита витрины — SEO-аудит.
Частые вопросы
Достаточно ли Yoast, чтобы закрыть WooCommerce SEO?
Нет. Плагин закрывает title, каноникал и карту, если он один. Он не решает, какие product_cat и архивы атрибутов имеют право быть документами, и не чинит два пути товара с категорией в ЧПУ.
Нужно ли индексировать страницу магазина /shop/?
Только если это настоящий корень выбора, а не дубль первой категории. Если /shop/ повторяет ту же плитку, что и «Каталог», оставьте один канон.
Открывать ли архивы атрибутов WooCommerce?
Только у измерения со спросом и своим набором SKU. «Включить архивы» на цвете и размере по умолчанию плодит тонкие копии категории.
Почему товар скрыт в каталоге, но висит в поиске?
Видимость «Скрытый» и «нет в наличии» не всегда снимают URL. Проверьте статус записи, карту и каноникал отдельно от цикла витрины.