Динамический meta title — один из ключевых элементов SEO-оптимизации сайта на WordPress. Правильное формирование заголовков страниц помогает улучшить индексирование сайта поисковыми системами и увеличить CTR в выдаче. В этой статье разберём, как создавать динамические meta title на WordPress с помощью кода и плагинов, а также рассмотрим практические примеры.
Почему важен динамический meta title в WordPress
Статические заголовки неудобны для сайтов с большим количеством страниц, особенно если контент генерируется динамически, например, в интернет-магазинах, блогах или каталогах. Использование одинакового заголовка на всех страницах снижает релевантность для поисковиков и ухудшает пользовательский опыт.
Динамический meta title позволяет автоматически формировать заголовки в зависимости от типа страницы, категории, тега, имени автора, даты публикации и других параметров.
Например, для записи блога можно сделать заголовок вида: «Название записи — Название сайта», а для страницы категории — «Категория: Название категории — Название сайта».
Такой подход улучшает SEO и помогает посетителям лучше ориентироваться на сайте.
Создание динамического meta title через functions.php
Самый простой способ — использовать фильтр wp_title или более современный pre_get_document_title. Рассмотрим пример функции для динамического формирования заголовка, которую можно добавить в файл functions.php вашей темы:
function wp8_dynamic_meta_title($title) {
if (is_home() || is_front_page()) {
return get_bloginfo('name') . ' — Главная страница';
} elseif (is_single()) {
$post_title = get_the_title();
return $post_title . ' — ' . get_bloginfo('name');
} elseif (is_category()) {
$cat = single_cat_title('', false);
return 'Категория: ' . $cat . ' — ' . get_bloginfo('name');
} elseif (is_tag()) {
$tag = single_tag_title('', false);
return 'Метка: ' . $tag . ' — ' . get_bloginfo('name');
} elseif (is_author()) {
$author = get_the_author();
return 'Автор: ' . $author . ' — ' . get_bloginfo('name');
} elseif (is_search()) {
$search = get_search_query();
return 'Результаты поиска по: ' . $search . ' — ' . get_bloginfo('name');
} elseif (is_404()) {
return 'Страница не найдена — ' . get_bloginfo('name');
}
return $title;
}
add_filter('pre_get_document_title', 'wp8_dynamic_meta_title');
Эта функция проверяет, какой тип страницы загружается, и в зависимости от этого формирует заголовок. Она автоматически добавляет название сайта в конец, что удобно для узнаваемости.
Использование плагинов для динамического meta title
Если вы не хотите писать код, можно использовать плагины, которые помогут гибко настраивать meta title и description без программирования.
Рассмотрим два популярных решения:
- Yoast SEO — самый популярный SEO-плагин для WordPress. Позволяет создавать шаблоны заголовков и описаний для разных типов страниц прямо в настройках. Например, можно задать шаблон
%%title%% — %%sitename%%, и плагин будет автоматически подставлять нужные значения. - Clearfy Pro — плагин для оптимизации и управления SEO, включает возможность тонкой настройки заголовков и отключения лишних тегов. Подходит для опытных пользователей, которые хотят контролировать все аспекты SEO.
Для примера настроек Yoast SEO:
- Установите и активируйте плагин.
- Перейдите в SEO > Внешний вид поиска.
- Вкладка «Типы записей» позволяет задать шаблоны для записей, страниц и других типов.
- Например, для записей в поле «Шаблон заголовка» введите
%%title%% — %%sitename%%. - Сохраните изменения.
Динамический meta title для Custom Post Types и таксономий
Если на сайте используются кастомные типы записей (Custom Post Types, CPT) и таксономии, нужно расширить функцию динамического заголовка или настроить шаблоны в плагинах.
Пример расширения функции для CPT product и таксономии product_cat:
function wp8_dynamic_meta_title_cpt($title) {
if (is_singular('product')) {
return get_the_title() . ' — Каталог товаров — ' . get_bloginfo('name');
} elseif (is_tax('product_cat')) {
$term = get_queried_object();
return 'Категория товаров: ' . $term->name . ' — ' . get_bloginfo('name');
}
return $title;
}
add_filter('pre_get_document_title', 'wp8_dynamic_meta_title_cpt', 20);
Важно указывать приоритет фильтра (здесь 20), чтобы функция сработала после основной.
Практические советы и рекомендации
При создании динамических meta title учитывайте следующие моменты:
- Уникальность: Каждый заголовок должен быть уникальным для каждой страницы, чтобы избежать дублирования.
- Длина: Оптимальная длина заголовка — 50–60 символов, чтобы он полностью отображался в поисковой выдаче.
- Ключевые слова: Включайте релевантные ключевые слова, но без перенасыщения.
- Структура: Используйте читаемую и логичную структуру, например,
Название записи — Категория — Название сайта. - Проверка: Проверяйте результат через инструменты типа Google Search Console и SEO анализаторы.
Заключение
Динамическое формирование meta title в WordPress — важный этап для улучшения SEO и удобства пользователей. Вы можете реализовать его как с помощью собственного кода в functions.php, так и применяя популярные SEO-плагины, например, Yoast SEO или Clearfy Pro.
Если хотите быстро и просто настроить заголовки, используйте плагин Yoast SEO. Для более глубокой оптимизации и управления SEO настройками обратите внимание на Clearfy Pro.