Хуки и фильтры в WordPress ломают код чаще всего из-за одной ошибки: лишней логики в callback
Хук — это точка входа, куда вы встраиваете свой код. Два базовых сценария:
• action — выполнить действие: вывести баннер, записать лог, изменить заголовок
• filter — получить значение, изменить его и вернуть обратно
Главное правило: action ничего не возвращает, filter обязан вернуть значение. Если забыть return в фильтре, вы легко получите пустую строку, сломанный контент или неправильный HTML. Ещё одна частая ошибка — менять глобальные переменные внутри callback без проверки контекста страницы.
Для темы держите callback коротким: одна функция — одна задача. Если нужна сложная логика, вынесите её отдельно и вызывайте внутри хука. Так проще отлаживать, отключать лишнее и не ловить побочные эффекты при рендере шаблона.
Проверяйте приоритеты, количество аргументов и место, где регистрируете хук. В темах это особенно важно: один и тот же фильтр можно повесить на content, excerpt или title, но результат будет разным.
Если сомневаетесь, начните с простого: сначала action для побочного эффекта, потом filter только там, где реально нужно менять значение.
Разработка тем WordPress
@wp_dev_deep_dive_ww
Хуки и фильтры в WordPress ломают код чаще всего из-за одной ошибки: лишней логики в callback
Этот пост опубликован в Telegram-канале Разработка тем WordPress. Подписаться можно по ссылке: @wp_dev_deep_dive_ww.