Диагностика проблемы пустых страниц в WooCommerce
Пустые страницы в WooCommerce зачастую появляются из-за отсутствия товаров в определённых категориях, фильтрах или атрибутах. Они не несут ценности ни для пользователя, ни для поисковых систем, но могут индексироваться, ухудшая SEO сайта. Часто такие страницы имеют URL с параметрами или пагинацией, которые ведут на страницы без содержимого.
Для выявления таких страниц используйте:
- Google Search Console — раздел «Покрытие» покажет ошибки и пустые страницы;
- Сканеры сайта, например Screaming Frog SEO Spider, для анализа страниц с низким или нулевым содержимым;
- Проверку логов сервера на большое количество запросов к страницам с пустым контентом;
- YoastSEO — вкладка «Страницы» и «Таксономии» может указать на проблемы с индексацией.
Пошаговое решение удаления пустых страниц WooCommerce с YoastSEO
1. Настройка noindex для пустых категорий и атрибутов
В YoastSEO можно автоматически добавить тег noindex для пустых таксономий WooCommerce, чтобы поисковики их не индексировали.
Добавьте в файл functions.php вашей темы или в плагин-сниппет следующий код:
add_filter('wpseo_robots', function($robots) {
if (is_product_category() || is_product_tag()) {
$term = get_queried_object();
if ($term && 0 === intval($term->count)) {
$robots['index'] = false;
$robots['follow'] = true;
}
}
return $robots;
});Этот фильтр проверяет, является ли текущая страница категорией или тегом товара, и если в категории нет товаров ($term->count === 0), добавляет тег noindex.
2. Отключение пагинации для пустых результатов фильтров
Пустые страницы часто появляются из-за пагинации на архивных страницах без товаров. Чтобы предотвратить индексацию таких страниц, используйте следующий код:
add_action('template_redirect', function() {
if (is_post_type_archive('product') || is_tax('product_cat') || is_tax('product_tag')) {
global $wp_query;
if ($wp_query->found_posts === 0) {
status_header(404);
nocache_headers();
include(get_query_template('404'));
exit;
}
}
});Этот код принудительно выдаёт ошибку 404 для страниц архивов WooCommerce без товаров, что предотвращает их индексацию.
3. Проверка и очистка редиректов через YoastSEO
Убедитесь, что в YoastSEO настроены редиректы с пустых URL на релевантные страницы. В YoastSEO в разделе «Редиректы» добавьте необходимые правила для перенаправления пользователей и поисковых систем.
Проверка результата после внедрения
- Снова просканируйте сайт в Google Search Console — пустые страницы должны исчезнуть из индекса или иметь статус «noindex».
- Используйте Screaming Frog SEO Spider чтобы проверить, что страницы с пустым контентом возвращают 404 или содержат
noindex. - Проверьте исходный код страниц категорий без товаров на предмет наличия мета-тега
noindex:
<meta name="robots" content="noindex,follow" />Частые ошибки и как их исправить
1. Пустые страницы продолжают индексироваться
Причина: отсутствует тег noindex или сервер не возвращает статус 404. Проверьте правильность кода и его размещение. Код должен быть в активной теме или плагине, не в кешированной версии.
2. Ошибка в фильтре wpseo_robots
Иногда неправильное использование фильтра приводит к сбоям в SEO-плагине. Рекомендуется использовать array_merge() для корректного объединения параметров.
3. Редиректы настроены неправильно
Перенаправления с пустых страниц должны вести на релевантный контент, а не на главную страницу без объяснения. Иначе поисковики могут считать это ошибкой.
Практические советы по безопасности и производительности
- Не перегружайте
functions.phpсложными запросами и проверками — используйте кеширование для результатов подсчёта товаров в категориях. - При использовании редиректов следите за циклическими перенаправлениями, которые могут привести к ошибкам и падению производительности.
- Регулярно обновляйте YoastSEO и WooCommerce, чтобы использовать актуальные хуки и функции.
Чек-лист по удалению пустых страниц WooCommerce для SEO
- Проанализировать сайт на наличие пустых страниц (GSC, Screaming Frog).
- Добавить фильтр
wpseo_robotsдля noindex пустых категорий и тегов. - Реализовать выдачу 404 для пустых архивов товаров.
- Настроить редиректы пустых URL на релевантные страницы.
- Проверить через инструменты разработчика наличие
noindex. - Проверить логи сервера и исключить частые обращения к пустым страницам.
- Обновить плагины и тему WordPress.
Сравнение подходов к удалению пустых страниц WooCommerce
| Метод | Преимущества | Недостатки | Компромисс |
|---|---|---|---|
| noindex через YoastSEO фильтр | Простой, автоматический | Пустые страницы остаются в индексе некоторое время | Сочетать с 404 для пустых архивов |
| Выдача 404 для пустых архивов | Быстро удаляет из индекса, улучшает UX | Потенциально влияет на пользовательский опыт, если настроено неправильно | Поддерживать редиректы и sitemap актуальными |
| Ручные редиректы с пустых URL | Контролируемый трафик и SEO | Трудозатратно для большого сайта | Автоматизировать через YoastSEO Premium |