Intereting Posts
Объединение и минимизация зависимостей для файлов JavaScript, находящихся в очереди Опубликовать только крюк? Создать форму поиска для фильтрации через термины register_activation_hook для нескольких функций Как загрузить и распаковать / установить плагины с шаблонами при установке Показывать содержимое короткого кода на боковой панели? Как вставить js-скрипт в нижний колонтитул, который не находится в .js-файле? Неустранимая ошибка в функции wp_get_current_user () Как сгенерировать список дочерних страниц и использовать некоторые из своих настраиваемых полей? добавить таксономию в качестве одного из пунктов меню Получать сообщения по пользовательской таксономии Отображать похожие сообщения по категориям в случайном порядке Имя автора комментария Только выполнить функцию jQuery (при готовности документа) на странице имеет короткий код из плагина Принятие специальных символов в querystring

Как переопределить add_filter плагина?

Как я могу переопределить add_filter плагина?

как

add_filter( 'wcml_switch_currency_exception', 'cart_switching_currency', 10, 4 ); 

Я хочу использовать свою пользовательскую функцию вместо функции «cart_switching_currency».

Solutions Collecting From Web of "Как переопределить add_filter плагина?"

Фильтры поставляются с параметром приоритета, по умолчанию 10, поэтому для переопределения функции вам необходимо увеличить приоритет:

 add_filter( 'wcml_switch_currency_exception', 'cart_switching_currency', 99, 4 ); 

add_filter (string $ tag, вызываемый $ function_to_add, int $ priority = 10, int $ accepted_args = 1)

Дополнительная информация в add_filter

Обновить:

Если удаление фильтра не работает, вы можете попробовать этот подход:

 function remove_cart_switching_currency_filter(){ remove_filter('wcml_switch_currency_exception', 'cart_switching_currency', 10, 4); } add_action( 'after_setup_theme', 'remove_cart_switching_currency_filter' ); 

Важно то, что приоритеты должны совпадать.

Дополнительная информация о after_setup_theme

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

 remove_filter( 'wcml_switch_currency_exception', 'cart_switching_currency', 10 ); add_filter( 'wcml_switch_currency_exception', 'my_function', 10, 4 );