Как использовать хуки в YoastSEO для расширения функционала WordPress

Плагин YoastSEO является одним из самых популярных инструментов для оптимизации сайтов на WordPress под поисковые системы. Однако, даже при большом наборе встроенных функций, иногда возникает необходимость тонкой настройки или добавления собственного функционала. Лучший способ сделать это — использовать хуки (actions и filters), которые предоставляет YoastSEO.

Что такое хуки в WordPress и YoastSEO

Хуки — это точки расширения, которые позволяют разработчикам вмешиваться в процесс работы плагина или темы без изменения исходного кода. WordPress поддерживает два типа хуков: actions и filters. Actions позволяют выполнять произвольный код в определенный момент, а filters — изменять данные перед их использованием.

YoastSEO интегрируется с WordPress и также предоставляет собственные хуки, чтобы управлять SEO-данными — мета-тегами, XML-картами, заголовками, сниппетами и многим другим.

Использование хуков обеспечивает гибкость и безопасность, поскольку ваши изменения сохраняются даже при обновлении плагина.

Основные хуки в YoastSEO для SEO-настроек

Давайте рассмотрим самые полезные хуки, которые часто используются для кастомизации YoastSEO.

Фильтр yoastseo_metadesc — изменение мета-описания

Этот фильтр позволяет изменить мета-описание страницы перед выводом в тег <meta name="description">. Например, вы можете динамически подставлять дополнительные данные или поправить описание.

function yoastseo_custom_metadesc($metadesc) {
    if (is_singular('post')) {
        $metadesc .= ' | Читайте больше полезных статей на нашем сайте.';
    }
    return $metadesc;
}
add_filter('yoastseo_metadesc', 'yoastseo_custom_metadesc');

Здесь мы дополняем стандартное описание дополнительной фразой на страницах записей.

Action wpseo_head — добавление собственных тегов в <head>

Если вам нужно добавить в секцию <head> страницы дополнительные метатеги или скрипты, вы можете использовать action wpseo_head. Он вызывается после вывода всех SEO-тегов Yoast.

function yoastseo_add_custom_meta() {
    if (is_front_page()) {
        echo '<meta name="custom-meta" content="some value">';
    }
}
add_action('wpseo_head', 'yoastseo_add_custom_meta');

Пример добавляет пользовательский мета-тег только на главной странице.

Фильтр wpseo_sitemap_entry — изменение данных в XML карте сайта

Иногда требуется изменить записи в sitemap, например, исключить определенные страницы или добавить кастомные атрибуты.

function yoastseo_custom_sitemap_entry($url, $type, $post) {
    if ($type === 'post' && has_category('noindex', $post)) {
        return false; // Исключаем из карты сайта посты с категорией noindex
    }
    return $url;
}
add_filter('wpseo_sitemap_entry', 'yoastseo_custom_sitemap_entry', 10, 3);

Так вы можете реализовать исключения из sitemap на базе условий.

Примеры практического использования хуков YoastSEO

Автоматическое добавление ключевых слов в мета-теги

По умолчанию YoastSEO не выводит мета-тег keywords, так как он устарел для SEO, но иногда он нужен для внутренних целей.

function yoastseo_add_meta_keywords() {
    if (is_singular('post')) {
        $keywords = get_post_meta(get_the_ID(), '_yoast_wpseo_focuskw', true);
        if ($keywords) {
            echo '<meta name="keywords" content="' . esc_attr($keywords) . '">';
        }
    }
}
add_action('wpseo_head', 'yoastseo_add_meta_keywords');

Код добавляет мета-тег keywords с фокусным ключевым словом Yoast.

Удаление тега canonical для определенных страниц

Иногда необходимо убрать автоматический canonical, например, для страниц с параметрами или фильтрами.

function yoastseo_remove_canonical_for_params($canonical) {
    if (is_page() && isset($_GET['filter'])) {
        return false; // Убираем canonical
    }
    return $canonical;
}
add_filter('wpseo_canonical', 'yoastseo_remove_canonical_for_params');

Это исключает canonical URL на страницах с параметром filter.

Как найти доступные хуки YoastSEO

Чтобы эффективно работать с хуками YoastSEO, полезно знать, где их искать:

  • Официальная документация YoastSEO (developers.yoast.com)
  • Исходный код плагина, особенно файлы с префиксом wpseo-
  • Использование плагинов для отладки хуков, например, Query Monitor

Также можно использовать функцию add_filter с отладочным выводом, чтобы отследить срабатывание определенных фильтров.

Рекомендации по безопасности и производительности при работе с хуками

При добавлении своих функций через хуки важно соблюдать несколько правил:

  • Минимизируйте сложные вычисления внутри функций, подключаемых к хукам, чтобы не замедлять загрузку страниц.
  • Используйте проверку условий (например, is_singular(), is_front_page()) для выполнения кода только там, где это нужно.
  • Экранируйте выводимые данные (функции esc_attr(), esc_html()) для защиты от XSS-уязвимостей.
  • Для больших изменений лучше создавать собственные классы и методы с префиксом yoastseo_ для удобства поддержки.

Это поможет сохранить стабильность сайта и качество SEO.

Заключение

Использование хуков YoastSEO — мощный способ расширять и настраивать SEO-функции WordPress без изменения исходного кода плагина. В этой статье мы рассмотрели несколько ключевых фильтров и действий, а также привели рабочие примеры кода. Освоив эту технику, вы сможете реализовать уникальные SEO-решения под свои задачи, делая сайт более эффективным и удобным для продвижения.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как использовать YoastSEO для автоматического управления редиректами в WordPress
31.12.2025
Оптимизация страниц категорий WooCommerce для Яндекса с помощью YoastSEO
12.05.2026
Как использовать YoastSEO для оптимизации текстов на WordPress
30.01.2026
Как автоматизировать создание title в WordPress для лучшего SEO
13.02.2026
Как удалить или изменить пагинацию rel=prev/next в WordPress с помощью YoastSEO
20.04.2026
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше