Хуки и фильтры в WordPress: где менять поведение темы, не трогая ядро
Хуки — это точки входа в коде: через них тема и плагины дают вам место для вмешательства. Для темы это главный способ доработок без правки чужих файлов и без боли при обновлениях.
Есть два типа:
— action: вставить свой код в нужный момент, например вывести блок после контента;
— filter: принять значение, изменить его и вернуть обратно, например заголовок, класс, excerpt или HTML-вывод.
Если в фильтре забыть return, вы сломаете результат. Если в action вернуть что-то вместо echo, это просто не сработает.
Рабочий подход такой: сначала ищите, где у функции есть apply_filters() или do_action(). Потом подключайте свой код в functions.php дочерней темы или в мини-плагине. Так логика не потеряется при смене шаблона. Для отладки полезно временно писать в лог имя хука и входные данные.
Частая ошибка в темах — пытаться «переписать» шаблон ради одной правки. Если задача касается только текста, классов или небольшого блока, почти всегда дешевле использовать фильтр. Если нужно вставить самостоятельный кусок разметки — берите action.
Правило простое: сначала ищем hook, потом решаем, нужен ли вам filter или action. Это экономит часы на поддержке и делает тему предсказуемой.
Разработка тем WordPress
@wp_dev_deep_dive_ww
Хуки и фильтры в WordPress: где менять поведение темы, не трогая ядро
Этот пост опубликован в Telegram-канале Разработка тем WordPress. Подписаться можно по ссылке: @wp_dev_deep_dive_ww.