В процессе разработки и настройки сайтов на WordPress часто возникает задача убрать стандартный заголовок H1, который выводится темой автоматически, например, в шаблонах single.php или page.php. Это может понадобиться, если вы хотите использовать собственные заголовки или реализовать уникальный дизайн, или если заголовок дублируется и негативно влияет на SEO.
Почему важно уметь удалять заголовок H1 без плагинов
Многие пользователи сразу ищут плагины для решения подобных задач, но это не всегда оправдано. Плагины могут замедлять сайт, создавать конфликты и усложнять поддержку. Поэтому лучше научиться делать это вручную, понимая, как работает тема и где выводится заголовок.
Кроме того, ручное удаление даёт полный контроль над кодом и структурой страницы, что положительно сказывается на производительности и SEO оптимизации.
В этой статье мы рассмотрим несколько способов убрать заголовок H1 без использования плагинов, включая модификацию шаблонов темы и использование хуков WordPress.
Где в теме WordPress хранятся и выводятся заголовки H1
Заголовок H1 чаще всего выводится в шаблонных файлах темы, таких как single.php, page.php, content-single.php или других файлах в папке темы. Обычно это выглядит так:
<h1 class="entry-title"><?php the_title(); ?></h1>
Чтобы убрать этот заголовок, можно просто удалить или закомментировать этот фрагмент кода. Но не всегда удобно или безопасно править файлы темы напрямую, особенно если тема обновляется.
В таких случаях правильнее создать дочернюю тему (child theme) и внести изменения туда, чтобы не потерять их при обновлении.
Способ 1: Удаление заголовка H1 через дочернюю тему
Создайте дочернюю тему, если у вас ее еще нет. В дочерней теме скопируйте файл шаблона, где выводится заголовок (например, single.php или content-single.php), и удалите или закомментируйте строку с <h1>.
Пример:
<!-- Убрали заголовок H1 из дочерней темы -->
<!-- <h1 class="entry-title"><?php the_title(); ?></h1> -->
После этого заголовок перестанет выводиться на страницах, использующих этот шаблон.
Важно проверить, что удаление H1 не повлияет на доступность и структуру документа. Обычно в HTML-документе должен быть один уникальный H1, поэтому если вы убираете стандартный, добавьте собственный заголовок в другом месте.
Способ 2: Удаление H1 с помощью фильтров и хуков
Некоторые темы выводят заголовок через функцию, которая hooked в определённое действие WordPress. В таких случаях можно отписаться от этого хука.
Для примера рассмотрим, что тема выводит заголовок с помощью функции wptask_theme_display_title, подключенной к хуку wptask_hook_before_content:
remove_action('wptask_hook_before_content', 'wptask_theme_display_title');
Чтобы это сработало, добавьте код в файл functions.php дочерней темы:
function wptask_remove_h1_title() {
remove_action('wptask_hook_before_content', 'wptask_theme_display_title');
}
add_action('wp', 'wptask_remove_h1_title');
Этот способ универсален для тем, которые используют хуки для вывода заголовков, и позволяет не трогать код шаблонов напрямую.
Способ 3: Удаление H1 через CSS (не лучший вариант)
Если нет возможности править PHP файлы, можно временно скрыть заголовок с помощью CSS:
h1.entry-title {
display: none !important;
}
Этот метод не удаляет заголовок из HTML, а лишь скрывает его визуально, что не идеально для SEO и доступности. Используйте только как временную меру.
Добавление собственного заголовка H1 после удаления стандартного
Если вы удалили стандартный H1, важно не оставить страницу без заголовка первого уровня. SEO-специалисты рекомендуют обязательно иметь один H1 на каждой странице.
Пример добавления собственного заголовка прямо в шаблоне дочерней темы:
<h1 class="custom-title">Добро пожаловать на мой сайт</h1>
Или динамически через функцию в functions.php:
function wptask_custom_h1_title() {
if (is_front_page()) {
echo '<h1 class="custom-title">Главная страница моего сайта</h1>';
}
}
add_action('wptask_hook_before_content', 'wptask_custom_h1_title');
Таким образом вы контролируете содержание и вид заголовка, улучшая структуру и SEO.
Итоги и рекомендации по удалению заголовка H1 в WordPress
Удаление заголовка H1 без плагинов — задача вполне решаемая с помощью дочерних тем и хуков. Вот основные рекомендации:
- Используйте дочернюю тему, чтобы не потерять изменения при обновлении.
- Ищите в шаблонах строку с
<h1>и удаляйте или комментируйте её. - Если тема использует хуки, отписывайтесь от них в
functions.php. - Не забывайте добавлять собственный H1, чтобы соблюсти SEO-требования.
- CSS-скрытие — крайний вариант, используйте его только временно.
Таким образом, вы сможете гибко управлять выводом заголовков на сайте, делая дизайн и структуру страниц максимально удобными и оптимизированными.