Как убрать дублирующиеся H1 и Title на страницах архивов в GeneratePress

На сайтах на GeneratePress дубли H1 и Title чаще всего всплывают не из-за самой темы, а из-за того, как собраны архивы, заголовки страниц и SEO-плагин. Типичный сценарий: у категории есть свой заголовок, в шаблоне темы он выводится как H1, а SEO-плагин добавляет похожий Title и иногда еще один H1 в контенте через блоки или шаблон страницы. В результате поисковику и пользователю показывается одна и та же сущность в нескольких местах.

Если задача именно в GeneratePress, смотреть нужно на три слоя: настройки темы, разметку архивов и то, что выводит контент/SEO-плагин. Ниже разберу, где искать конфликт и как убрать дубли без лишних правок в ядре темы.

Где возникает дубль и как его быстро диагностировать

Сначала проверьте не «ощущение», а фактическую разметку. Откройте проблемную страницу архива и посмотрите исходный код: один ли там H1, совпадает ли он с Title, нет ли второго заголовка в блоке контента или в шаблоне. В GeneratePress архивный заголовок обычно выводится через стандартный шаблон темы, а не через произвольный HTML.

Что смотреть в первую очередь

  • один ли тег <h1> на странице архива;
  • не дублируется ли заголовок в блоке «заголовок страницы» внутри контента;
  • не добавляет ли SEO-плагин отдельный H1 через шаблон;
  • не включен ли в GeneratePress Page Header или похожий блок, который повторяет название архива;
  • нет ли одинакового текста в <title>, H1 и первом заголовке в контенте без необходимости.

Если у вас установлен SEO-плагин, проверьте его шаблоны Title для архивов. Иногда проблема не в теме, а в том, что Title категории и H1 категории совпадают дословно, а ниже еще повторяется тот же текст в описании архива. Это не критическая ошибка, но для некоторых страниц такое дублирование выглядит как шаблонная страница без уникального сигнала.

Как убрать дубли в GeneratePress без правки ядра

В GeneratePress безопаснее всего решать задачу через дочернюю тему или небольшой сниппет в functions.php. Если нужно убрать именно заголовок архива, не трогая остальную структуру, можно отключить стандартный вывод заголовка на архивных страницах и вывести свой вариант только там, где он нужен.

Вариант 1: скрыть стандартный заголовок архива

Если архивный H1 уже выводится в другом месте — например, через SEO-плагин или кастомный шаблон — стандартный заголовок GeneratePress можно отключить фильтром. Это аккуратнее, чем прятать его CSS-ом.

<?php
add_filter( 'generate_show_archive_title', '__return_false' );

Этот фильтр убирает стандартный заголовок архива GeneratePress. Подходит, если вы точно знаете, что H1 будет выведен другим способом и не исчезнет совсем.

Вариант 2: оставить H1, но изменить его вывод

Если проблема не в самом H1, а в его тексте, лучше не отключать заголовок полностью, а изменить шаблон вывода через хуки GeneratePress. Например, можно добавить более полезный заголовок для категории и оставить Title в метаданных страницы более коротким.

<?php
add_action( 'generate_before_main_content', function() {
    if ( ! is_category() ) {
        return;
    }

    $term = get_queried_object();
    if ( empty( $term->name ) ) {
        return;
    }

    echo '<header class="archive-header">';
    echo '<h1 class="archive-title">' . esc_html( $term->name ) . '</h1>';
    if ( ! empty( $term->description ) ) {
        echo '<div class="archive-description">' . wp_kses_post( wpautop( $term->description ) ) . '</div>';
    }
    echo '</header>';
}, 5 );

Такой подход полезен, когда стандартный заголовок GeneratePress не подходит по верстке или нужно добавить описание категории сразу под H1. Но перед внедрением обязательно отключите старый заголовок, иначе получите два H1.

Вариант 3: убрать повтор в контенте

Если дубль создается не темой, а контентом страницы, проверьте шаблон записи или страницы, где вручную вставлен заголовок уровня H1. В GeneratePress это особенно заметно на страницах, где включен блок «Page Header» или используется конструктор с собственным заголовком. В таком случае правильнее оставить один H1 в шаблоне темы, а в контенте использовать H2/H3.

Сравнение подходов: плагин, код, компромисс

ПодходКогда подходитПлюсыМинусы
Настройки SEO-плагинаЕсли дубль связан с Title/метаданнымиНе требует правки темыНе решает лишний H1 в шаблоне
Хуки GeneratePressЕсли нужно убрать или заменить вывод заголовкаТочечно и безопасноНужен доступ к коду
CSS-скрытиеТолько для визуального эффектаБыстроH1 остается в HTML, проблему не решает

Если цель именно SEO и чистая разметка, CSS-скрытие — слабый вариант. Поисковик все равно видит скрытый заголовок, а вы получаете лишний технический долг. Лучше убрать источник дублирования на уровне шаблона или фильтра.

Пошаговая настройка для GeneratePress

  1. Откройте проблемный архив и проверьте исходный код страницы.
  2. Найдите все заголовки уровня H1 и сравните их с Title в браузере и SEO-плагине.
  3. Определите, кто выводит лишний заголовок: GeneratePress, SEO-плагин или контент.
  4. Если заголовок лишний в теме, отключите стандартный вывод через фильтр или замените его хуком.
  5. Если дубль идет из контента, замените H1 на H2/H3 в редакторе или шаблоне блока.
  6. Очистите кэш страницы, если он есть, и проверьте HTML заново.

Как проверить, что решение сработало

Проверка должна быть не только визуальной. После правки откройте страницу архива в браузере и сделайте три вещи:

  • посмотрите исходный код и убедитесь, что H1 один;
  • проверьте, что Title в <head> не дублирует заголовок страницы дословно, если это было проблемой;
  • обновите страницу в режиме инкогнито или после очистки кэша, чтобы увидеть актуальную верстку.

Если используете SEO-плагин, проверьте еще и предпросмотр сниппета. Иногда на фронтенде все выглядит нормально, а в шаблоне Title осталась старая формула. Это особенно заметно после переноса сайта или смены структуры архивов.

Частые ошибки и как их исправить

Скрыли H1 через CSS

Это частая ошибка: заголовок становится невидимым, но остается в HTML. Для поисковой и технической чистоты это не решение. Если H1 лишний, отключайте его в шаблоне или фильтром GeneratePress.

Удалили заголовок, но забыли про доступность

На архиве должен остаться понятный заголовок страницы. Если убрать H1 совсем, страница станет хуже для пользователей и вспомогательных технологий. Лучше заменить вывод, а не вырезать его полностью.

Оставили одинаковый текст в Title и H1 без смысла

Полное совпадение не всегда ошибка, но если это архив с описанием, полезнее развести формулировки: Title сделать короче и ориентированным на поиск, а H1 — понятным человеку на странице.

Не очистили кэш

После изменения шаблона GeneratePress старый HTML может оставаться в кэше плагина, сервера или CDN. Если проверяете правку сразу после сохранения, легко сделать ложный вывод, что ничего не изменилось.

Что учесть по безопасности и производительности

Любой код для GeneratePress лучше добавлять не в основной файл темы, а в дочернюю тему или через небольшой mu-plugin. Так вы не потеряете правку после обновления. Если используете сниппеты, держите их минимальными: один фильтр или один хук вместо большого блока условной логики.

Если на сайте много архивов и таксономий, не делайте тяжелые запросы внутри хука вывода заголовка. Для этой задачи достаточно get_queried_object() и стандартных условных тегов. Это быстрее и безопаснее, чем тянуть лишние данные из базы.

Когда дубль связан не только с темой, но и с лишними мета-блоками, имеет смысл проверить чистку шаблонов и SEO-настройки. В таких сценариях полезно сначала убрать технический шум, а уже потом править текст заголовков. Если нужен более широкий аудит дублей и мусорной разметки, в экосистеме WPShop есть Clearfy Pro: https://wpshop.ru/plugins/clearfy?utm_source=generatepress.ru&utm_medium=article&utm_campaign=generatepress-ubrat-dubliruyushchiesya-zagolovki-h1-i-title-na-stranitsakh-arhivov

В GeneratePress такие правки обычно занимают немного времени, но только если не смешивать задачу темы, SEO-плагина и контента в один ком. Сначала определите источник дубля, потом отключите лишний вывод, затем проверьте HTML и кэш. Это надежнее, чем пытаться «починить» страницу визуально.

Как отключить встроенную XML-карту сайта в GeneratePress и отдать индексацию своему sitemap
29.08.2026
Как отключить переход на архив автора и блок author bio в GeneratePress
01.09.2026
Как отключить архивы авторов и дат в GeneratePress без поломки SEO
20.08.2026
Как убрать дублирующиеся H1 и Title на страницах архивов в GeneratePress
13.08.2026
Как отключить лишние изображения srcset на страницах без картинок в GeneratePress
26.08.2026