Диагностика проблемы с автозаголовками в WooCommerce
В стандартной установке WooCommerce на страницах магазина, категорий и товаров часто выводятся автоматические заголовки, например, "Каталог товаров", "Категория: Аксессуары" или названия товаров. Иногда эти заголовки не подходят под дизайн сайта или мешают SEO. Задача — убрать или заменить эти заголовки без использования плагинов.
Типичные места появления автозаголовков
- Архив товаров (shop page)
- Страницы категорий и тегов WooCommerce
- Отдельные страницы товаров
При этом заголовки формируются в шаблонах тем или через хуки WooCommerce.
Пошаговое решение: удаляем автозаголовки через хуки
WooCommerce выводит заголовок каталога с помощью хука woocommerce_show_page_title. Его можно отключить, чтобы убрать заголовок на странице магазина и архивах.
add_filter('woocommerce_show_page_title', '__return_false');Поместите этот код в functions.php вашей дочерней темы или в кастомный плагин.
Удаление заголовков категорий и тегов товаров
Заголовки категорий и тегов выводятся в шаблоне archive-product.php через функцию woocommerce_page_title(). Чтобы убрать их, можно переопределить шаблон или использовать фильтр woocommerce_page_title:
add_filter('woocommerce_page_title', function($title) {
if (is_product_category() || is_product_tag()) {
return '';
}
return $title;
});Удаление заголовков на странице отдельного товара
Для страницы товара заголовок обычно выводится в шаблоне темы. Если заголовок — это название товара, то убрать его программно не всегда нужно, но если требуется, можно добавить CSS:
.single-product .product_title {
display: none;
}Или переопределить шаблон single-product/title.php в дочерней теме, удалив вызов the_title().
Проверка результата после внедрения
После добавления кода очистите кеш сайта и браузера. Перейдите на страницу магазина, категорий и товара:
- Заголовок "Каталог товаров" на странице магазина должен исчезнуть.
- Заголовки категорий и тегов должны быть пустыми.
- На странице товара заголовок можно скрыть через CSS или шаблон.
Для точной проверки используйте инструменты разработчика в браузере (F12) и убедитесь, что заголовочные теги <h1>, <h2> отсутствуют или пусты.
Частые ошибки и как их исправить
- Код не работает — добавлен в неправильный файл. Убедитесь, что код добавлен в
functions.phpдочерней темы или в кастомный плагин, а не в родительскую тему, чтобы не потерять изменения при обновлении. - Кэширование мешает видеть изменения. Очистите кеш плагина (например, WP Super Cache, W3 Total Cache) и браузера.
- Другие плагины или темы переопределяют вывод заголовков. Проверьте, не подключены ли кастомные шаблоны, которые выводят заголовки напрямую без хуков.
- CSS не применился для скрытия заголовка товара. Проверьте селектор и при необходимости добавьте
!important.
Практические советы по безопасности и производительности
- Добавляйте код только в дочернюю тему или кастомный плагин, чтобы избежать потери при обновлениях.
- Используйте фильтры, а не полное переопределение шаблонов, если нужно минимальное изменение — так проще поддерживать сайт.
- Не отключайте заголовки без причины — они важны для SEO и удобства пользователей. Если убираете, продумайте альтернативы (например, свои заголовки в шаблонах).
- Минимизируйте использование inline CSS и старайтесь добавлять стили в отдельные файлы темы.
Сравнение способов удаления автозаголовков в WooCommerce
| Метод | Описание | Плюсы | Минусы |
|---|---|---|---|
Фильтр woocommerce_show_page_title | Отключает заголовок каталога на странице магазина | Простой, не требует шаблонов | Не влияет на заголовки категорий |
Фильтр woocommerce_page_title | Очищает заголовки категорий и тегов | Гибко, легко управлять | Не влияет на заголовок товара |
| CSS скрытие | Скрывает заголовки товара на фронтенде | Быстро, без изменения PHP | Заголовок остается в коде, плохо для SEO |
| Переопределение шаблонов | Удаление вывода заголовков в PHP-файлах темы | Полный контроль | Требует поддержки и обновления |