Как использовать хуки в WordPress с примерами кода

Хуки в WordPress — это ключевой механизм, который позволяет разработчикам изменять или дополнять функциональность сайта без правки ядра платформы. В этой статье мы подробно разберём, что такое хуки, как их использовать, и приведём практические примеры с кодом для создания собственных расширений.

Что такое хуки в WordPress: actions и filters

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

Например, action может запускать функцию при публикации записи, а filter — изменять содержимое записи перед выводом на страницу.

Понимание различий между ними — ключ к правильной работе с WordPress.

Action не возвращает значение и используется для запуска функций, а filter всегда возвращает изменённые данные.

Пример использования action

Допустим, мы хотим отправлять письмо администратору при публикации новой записи. Для этого используем action publish_post:

function wpeditor_notify_admin_on_publish($post_ID) {
    $post = get_post($post_ID);
    $admin_email = get_option('admin_email');
    $subject = 'Новая публикация на сайте';
    $message = 'Опубликована новая запись: ' . $post->post_title . '\n' . get_permalink($post_ID);
    wp_mail($admin_email, $subject, $message);
    return $post_ID;
}
add_action('publish_post', 'wpeditor_notify_admin_on_publish');

Здесь функция wpeditor_notify_admin_on_publish отправляет письмо при публикации записи.

Пример использования filter

Допустим, нужно автоматически добавлять подпись в конце контента записи. Для этого применим filter the_content:

function wpeditor_add_signature_to_content($content) {
    if (is_single()) {
        $signature = '<p><em>Спасибо за прочтение!</em></p>';
        return $content . $signature;
    }
    return $content;
}
add_filter('the_content', 'wpeditor_add_signature_to_content');

Как создавать собственные хуки в плагинах и темах

Для расширения функционала можно создавать свои хуки. Это позволяет сделать код гибким и легко настраиваемым другими разработчиками.

Чтобы создать action-хук, используйте функцию do_action. Для filter — apply_filters.

Пример создания собственного action-хука

function wpeditor_custom_process() {
    // Ваш код
    do_action('wpeditor_after_process');
}

// В другом месте можно повесить функцию на этот хук
add_action('wpeditor_after_process', function() {
    error_log('Процесс завершён');
});

Это позволит другим разработчикам подключать свои функции к событию wpeditor_after_process.

Пример создания собственного filter-хука

function wpeditor_modify_text($text) {
    $text = apply_filters('wpeditor_filter_text', $text);
    return $text;
}

// Подключаем функцию, которая изменит текст
add_filter('wpeditor_filter_text', function($text) {
    return strtoupper($text);
});

Практические советы по использованию хуков

1. Всегда используйте префиксы в названиях своих функций и хуков, чтобы избежать конфликтов. В нашем случае это wpeditor_.

2. Проверяйте контекст выполнения функций — некоторые хуки вызываются в админке, другие — на фронтенде.

3. Избегайте тяжёлых операций в хуках, чтобы не замедлять работу сайта.

4. Используйте приоритеты в add_action и add_filter, чтобы контролировать порядок выполнения функций.

Полезные плагины для работы с хуками

- Code Snippets — позволяет добавлять PHP-код с хуками без правки файлов темы или плагинов.

- Query Monitor — помогает отследить, какие хуки и фильтры вызываются на странице.

- Hook Me Up — визуальный инструмент для изучения всех хуков в WordPress.

Использование Code Snippets

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

Пример: добавьте в Code Snippets функцию из примера с подписью к записи, активируйте её, и изменения сразу вступят в силу.

Заключение

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

Освоение хуков значительно расширит ваши возможности как разработчика WordPress и поможет создавать качественные проекты с минимальными затратами времени и ресурсов.

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

⭐⭐⭐⭐⭐
Как создать автоматическое отправление email в WordPress с примерами кода
11.01.2026
Как автоматизировать обновление transient в WordPress: практическое руководство
28.03.2026
Как создать автоматический импорт пользовательских данных в WordPress
19.03.2026
WooCommerce: как автоматически удалять неактивных клиентов для оптимизации базы
29.06.2026
Как автоматизировать отправку отзывов в WordPress: примеры плагинов и кода
23.02.2026
×

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

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

пишет статьи

готовит SEO

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

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