Любая страница сайта на WordPress состоит из множества функций, файлов и запросов к базе данных. Ядро CMS WordPress, плагины и тема работают в связке, чтобы сгруппировать элементы страницы, такие как текст, картинки, скрипты и стили, — дабы в браузере отобразилась итоговая страница.
Как и любая CMS, WordPress не всегда сможет удовлетворить все ваши потребности, и у разработчиков часто возникает соблазн напрямую настроить эту популярную CMS — влезть в исходный код и немного его подправить. Но такой подход может создать ненужные проблемы для функциональности сайта. К счастью, есть лучший способ: с помощью хуков, действий и фильтров, в ВордПресс. Хуки (действия и фильтры) WordPress позволяют вам «подключиться» к этому процессу сборки в определенные моменты и запустить свой собственный код, не затрагивая основные файлы.
Хук, с английского hook — крюк, поэтому хуки также известны как «крючки», «зацепки», «перехватчики», «ловушки», «захват», «перехват» и т.д.
Если вы попробуете подсчитать хуки в кодовой базе ядра WordPress Core, то обнаружите сотни, если не тысячи, хуков. Если еще прибавить сюда темы и плагины, хуков вы насчитаете очень много. Отсюда вывод — программисты не только пользуются хуками, но и их использование является очень популярным решением.
Хуки WordPress делятся на два основных типа: хуки действий (action
) и хуки фильтров (filter
). Хуки действий позволяют вам вставлять собственный код в определенные точки вашего сайта на ВордПресс, например, когда загружается страница или когда пользователь входит в систему. Хуки фильтров, с другой стороны, позволяют вам изменять данные перед их отправкой в базу данных или браузер.
Короче говоря, хуки действий позволяют расширять полученную информацию (данные), а хуки фильтров позволяют изменять эти данные и возвращать пользователю. Понимание этих двух типов хуков имеет решающее значение для настройки и расширения функциональности вашего сайта на WordPress.
Основное различие между хуками действий и хуками-фильтрами заключается в их назначении. Хуки действий используются для вставки пользовательского кода в определенные моменты выполнения ВордПресс, а хуки фильтров используются для изменения данных перед их сохранением в базе данных или отображением пользователю. Другими словами, перехватчики действий связаны с синхронизацией, а перехватчики фильтров — с манипулированием данными.
Создание пользовательского хука действия в WordPress состоит из двух шагов. Во-первых, вам нужно определить хук в вашей теме или плагине с помощью функции do_action()
. Эта функция принимает два параметра: имя перехватчика действия и любые дополнительные аргументы. Во-вторых, запустить этот хук, используя функцию add_action()
. Эта функция принимает три параметра: имя хука действия, добавляемую функцию и приоритет функции.
Хуки фильтров в WordPress позволяют изменять данные до того, как они будут сохранены в базе данных или отображены пользователю. Чтобы использовать хук фильтра, вам нужно добавить функцию к одному из существующих фильтров в коде, с помощью функции add_filter()
. Эта функция принимает те же параметры, что и функция add_action()
.Зацепка фильтр должна принимать данные для фильтрации в качестве параметра, изменять их, а затем возвращать.
Чтобы удалить функцию из хука в ВордПресс, вы можете использовать функцию remove_action()
или remove_filter()
. Эти функции принимают те же параметры, что и соответствующие им функции добавления: имя зацепки и удаляемую функцию. Обратите внимание, что вы можете удалить функцию из перехватчика, только если она была добавлена с идентифицируемым (существующим) названием функции обратного вызова (callback
).
Да, вы можете добавить несколько функций в один и тот же хук в WordPress. Каждая функция будет выполняться в том порядке, в котором они были добавлены, если вы не укажете приоритет. Параметр Priority в функциях add_action()
и add_filter()
определяет порядок выполнения функций, при этом меньшие номера соответствуют более раннему выполнению.
Хуки WordPress используются для самых разных целей: от настройки внешнего вида вашего сайта до расширения его функциональности. Например, вы можете использовать перехватчики действий для добавления пользовательских метатегов в заголовки HTML-документа или для вставки кода отслеживания (аналитики) в футер сайта. Хуки фильтров можно использовать для настройки содержимого ваших постов, например, путем автоматического добавления уведомления об авторских правах в конце каждой публикаций. Вариантов использования зацепок в ВордПресс — огромная масса.
Есть несколько способов найти доступные хуки в WordPress. Один из способов — просмотреть Кодекс WordPress, где представлен полный список доступных перехватчиков. Другой способ — использовать соответствующие плагины, которые отображают все хуки действий и хуки фильтров, что используются на текущей странице.
Да, вы можете создавать свои собственные хуки в WordPress. Это часто делается при разработке тем и плагинов, чтобы позволить другим разработчикам расширять или изменять ваш код. Чтобы создать свой собственный хук, вам просто нужно вызвать функцию do_action()
или apply_filters()
с уникальным именем для вашего хука.
Некоторые рекомендации по использованию хуков в WordPress включают в себя:
__return_true
и __return_false
для перехватчиков фильтров, для которых требуется логическое (boolean
) значение;
Спасибо за внимание!
Сегодняшний обзор посвящен людям, для которых важен вопрос конфиденциальности в Интернете и кто ценит свои…
Впервые о бренде Pro Plan услышали в 1986 году, когда он стал частью американской компании…
Страх наказания хуже самого наказания (В наказании есть нечто определенное, оно все же лучше, чем…
Если вы планируете разместить веб-сайт в Интернете, очень важно найти для него быстрый и надежный…
Учеба за границей уже давно ассоциируется с качественным образованием, новыми возможностями и множеством перспектив. Но…
Выбор мастера для ремонта и перетяжки мебели — задача, которая требует вдумчивого подхода. Ведь от…