Динамические заголовки страниц — важный элемент для улучшения SEO и удобства пользователей. В этой статье подробно разберём, как изменить заголовок страницы WordPress программно, основываясь на различных условиях и данных, а также рассмотрим полезные плагины, которые помогут автоматизировать этот процесс.
Почему важно использовать динамические заголовки в WordPress
Заголовок страницы (title) — один из ключевых факторов ранжирования в поисковых системах. Статичные заголовки не всегда отражают актуальный контент, особенно если сайт содержит много динамических данных, фильтров, категорий или пользовательский контент.
Динамическое изменение заголовков позволяет:
- Улучшить SEO, добавляя релевантные ключевые слова;
- Повысить удобство пользователей, показывая точный контекст страницы;
- Автоматизировать управление метаинформацией на большом сайте;
- Уникализировать заголовки для страниц с похожим содержимым.
Рассмотрим, как можно реализовать эти возможности в WordPress.
Как программно изменить заголовок страницы в WordPress
WordPress использует функцию wp_title() и хук pre_get_document_title для генерации заголовков. Начиная с WordPress 4.4, рекомендуется использовать фильтр pre_get_document_title для полного контроля.
Использование фильтра pre_get_document_title
Добавим в файл functions.php вашей темы следующий код:
function wp3ru_filter_dynamic_title($title) {
if (is_home()) {
$title = 'Последние новости и статьи на wp3.ru';
} elseif (is_category()) {
$category = get_queried_object();
$title = 'Статьи в категории: ' . $category->name . ' - wp3.ru';
} elseif (is_singular('post')) {
$post_title = get_the_title();
$title = $post_title . ' | Полный разбор и советы на wp3.ru';
}
return $title;
}
add_filter('pre_get_document_title', 'wp3ru_filter_dynamic_title');В этом коде мы динамически задаём заголовок для главной страницы, категорий и одиночных записей, что помогает сделать заголовок более релевантным.
Динамические заголовки для пользовательских типов записей
Если на сайте используются кастомные типы записей, например portfolio, можно добавить обработку и для них:
function wp3ru_custom_post_type_title($title) {
if (is_singular('portfolio')) {
$post_title = get_the_title();
$title = $post_title . ' - Наши работы на wp3.ru';
}
return $title;
}
add_filter('pre_get_document_title', 'wp3ru_custom_post_type_title');Этот код расширяет функциональность и делает заголовки более информативными.
Использование плагинов для управления заголовками и SEO
Если хочется более простой вариант без кодинга, можно использовать плагины. Вот несколько рекомендуемых:
- Yoast SEO — самый популярный плагин для SEO, который позволяет управлять шаблонами заголовков и описаний на всех типах страниц;
- Clearfy Pro — облегчает оптимизацию сайта и содержит инструменты для управления мета-тегами, в том числе заголовками;
- WPGPT — может помочь автоматически генерировать описания и заголовки с помощью ИИ, если у вас много контента.
Например, в Yoast SEO вы можете задать шаблон для заголовков вида %%title%% | %%sitename%% и использовать переменные для динамики.
Как отладить динамические заголовки и проверить результат
После добавления фильтров или настройки плагинов важно проверить, что заголовки действительно меняются как задумано.
Для этого используйте:
- Просмотр исходного кода страницы в браузере (тег
<title>в<head>); - Плагины браузера для SEO анализа, например, SEO Meta in 1 Click;
- Инструменты Google Search Console для проверки, как поисковики видят заголовки.
Если заголовок не меняется, проверьте, не переопределяет ли его тема или другой плагин. В этом поможет временное отключение плагинов и переключение на дефолтную тему.
Дополнительные советы по работе с заголовками в WordPress
Используйте уникальные заголовки для каждой страницы
Уникальность заголовков помогает поисковикам лучше индексировать страницы и избегать дублирования контента.
Добавляйте ключевые слова естественно
Включайте в заголовки ключевые запросы, но без спама, чтобы сохранить читаемость для пользователей.
Обрабатывайте пагинацию
Для страниц с пагинацией добавляйте номер страницы к заголовку, например: «Статьи - Страница 2 - wp3.ru». Это можно сделать так:
function wp3ru_title_with_pagination($title) {
if (is_paged()) {
$title .= ' - Страница ' . get_query_var('paged');
}
return $title;
}
add_filter('pre_get_document_title', 'wp3ru_title_with_pagination');Так поисковики и пользователи сразу видят, на какой странице находятся.
Вывод
Динамические заголовки в WordPress — мощный инструмент для улучшения SEO и пользовательского опыта. Вы можете реализовать их с помощью фильтров WordPress, кастомного кода или использовать готовые плагины. Главное — тестировать изменения и следить за корректным отображением заголовков на всех страницах сайта.