Удаление фильтра в WP, когда callback — метод класса плагина

При программировании в WP мы очень часто добавляем какие то фильтры и действия. А если посмотреть в код любого плагина — это сборники реализаций зацепок.

Не всегда авторы дают возможность гибко управлять поведением их плагина через настройки. Тогда приходится делать это программно, например, отменяя фильтры. Но здесь есть одна проблема.

Текущие рекомендации по конструированию плагинов к WP советуют создавать плагин в виде класса. Это как минимум помогает избежать конфликтов имен методов. При этом функция API remove_filter() морально устарела и позволяет использовать её только для процедурного варианта объявленных фильтров.

Поделюсь вариантом функции remove_filter(), позволяющим удалять фильтры, объявленные плагинами-классами.

Функция сканирует глобальный массив фильтров и вызывает встроенную remove_filter() с требуемыми параметрами.

Для вызова нужно знать имя фильтра (например, ‘the_content’), имя класса, и название метода, используемого как callback функция фильтрации.

Мало букафф? Читайте есчо !

Фильтры Wordpress, заданные в текущий момент

Декабрь 20, 2016 г.

Если вам понадобилось посмотреть какие же фильтры установлены в текущий момент, то обращаться к WP API не нужно - такой функции нет. Полный список активных хуков хранится в глобальной переменной $wp_filter. [crayon-69c4cffbec605973250977/] Это массив ...

Читать

Добавляем типы публикаций в Wordpress

Апрель 16, 2016 г.

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

Читать

Ставим плагин facebook "Страница" на сайт на Wordpress

Май 3, 2016 г.

Если вы думаете, что ставить плагины Facebook на свой сайт трудно, и это удел программистов, то вы ошибаетесь. Хотя, т.к. я программист, то могу ошибаться ...

Читать

Ajax в WP

Июль 12, 2017 г.

Посмотрим в данном гайде как сделать обработку ajax запроса на Wordpress. WP предоставляет два hook-а для подключения PHP обработчика к ajax запросу. ...

Читать
 

Комментарии к «Удаление фильтра в WP, когда callback — метод класса плагина»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: