Intereting Posts
wp_query для нескольких городов (несколько значений в метабоке) Почему появляется <li class = "default-menu">? Я пытаюсь удалить общую ссылку под названием navigation on my main menu В теме Twenty Eleven делать снимки по умолчанию случайным образом? Синхронизировать сайт WordPress между двумя разными серверами После клонирования WP сделать подкаталог, я не могу получить к нему доступ Относительный путь вообще не работает в локальной среде WAMP Добавление шаблонов страниц для публикации, но он игнорировал это Как я могу вызвать конкретный файл (через php), указав имя входа в систему? 404 на всех страницах, но пользовательские типы сообщений работают нормально. Параметры экрана и кнопки справки не работают при включении Bootstrap Css Как собрать ключевые слова и данные поисковой системы в веб-формах? Как использовать функции WordPress (PHP) в файлах PartialJS partials? Отключить сбой метаданных администратора короткий код для логотипа Ограничить комбинации отдельных категорий

Каковы шаги + предпосылки для использования add_filter?

Привет всем, что я WP noob, и у меня есть задача очистить беспорядок, оставленный другими людьми, когда они редактируют ядра плагинов. Насколько я понимаю, в WP есть такие вещи, которые называются фильтрами. Я не уверен, как их использовать или как они работают. В этом примере ниже (скопировано из учебника):

function remove_footer_admin () { echo 'Fueled by <a href="http://www.wordpress.org" target="_blank">WordPress</a> | Designed by <a href="http://www.uzzz.net" target="_blank">Uzzz Productions</a> | WordPress Tutorials: <a href="http://www.wpbeginner.com" target="_blank">WPBeginner</a></p>'; } add_filter('admin_footer_text', 'remove_footer_admin'); 

Что происходит? Итак, мы перезаписываем функцию admin_footer_text ? В этом случае это функция из раздела admin. К моему текущему пониманию (скажите, если я ошибаюсь, пожалуйста), в разделе администратора есть множество функций WP по умолчанию, которые выполняются в определенном порядке. Этот add_filter который использует remove_footer_admin будет вызываться как remove_footer_admin . Таким образом, любые функции WP будут выполняться до запуска admin_footer_text , затем admin_footer_text , затем remove_footer_admin , а затем любые функции WP, которые обычно запускаются после admin_footer_text . Это верно?

Кроме того, кажется, что add_filter может быть добавлен иногда? Я не понимаю, каковы условия. Не могли бы вы объяснить, в какой ситуации я могу его использовать?

Solutions Collecting From Web of "Каковы шаги + предпосылки для использования add_filter?"

Мне нравится думать о add_filter как о способе настройки переменной. Его можно использовать везде, где вы видите apply_filters в коде. Как правило, вы return значение переменной, а не эхо-сигнал.

Ваш пример будет лучше написан так:

 function remove_footer_admin () { return 'Fueled by <a href="http://www.wordpress.org" target="_blank">WordPress</a> | Designed by <a href="http://www.uzzz.net" target="_blank">Uzzz Productions</a> | WordPress Tutorials: <a href="http://www.wpbeginner.com" target="_blank">WPBeginner</a></p>'; } add_filter('admin_footer_text', 'remove_footer_admin'); 

И remove_footer_admin() будет выполняться, когда код WP попадает в

 echo apply_filters( 'admin_footer_text', '<span id="footer-thankyou">' . __( 'Thank you for creating with <a href="http://wordpress.org/">WordPress</a>.' ) . '</span>' ); 

в admin-footer.php … где второй параметр ( <span> и т. д.) – это переменная, которую apply_filters позволяет вам изменять в этом случае.

Я написал учебник по фильтрам WordPress, который, я думаю, может помочь объяснить некоторые вещи.