Intereting Posts
Фильтрация записей администратора для пользовательского типа сообщения Изменение уведомляющего сообщения при обновлении профиля Как скопировать определенный контент страницы и создать дочернюю страницу? Я изменил «Howdy» в панели администратора на панели инструментов, но когда я просматриваю сайт, он все еще говорит Howdy! несколько пользовательских объявлений типа выбора типа публикации Поделиться кнопками Facebook Twitter, так же как wordpress.com без webservice html id удаляется для пользователя, не являющегося администратором? Как вызвать ajax в файле плагина как изменить автоматическое размещение социальных плагинов под контентом? Есть ли способ изменить выбор шаблона страницы по умолчанию? Список пользователей по году рождения с использованием цикла foreach для динамического заполнения лет и данных мета-запрос не показывает никаких результатов? s / mime подпись исходящей почты Файл конфигурации без ключей.? wp_enqueue_style не позволит мне использовать только экран

Удаление действия из внешнего класса плагина

Я использую плагин с этой строкой кода, чтобы добавить действие из класса Eazyest_Frontend :

 add_action( 'eazyest_gallery_thumbnails', 'ezg_thumbnails',5); 

Я хочу удалить это и сделать что-то немного другое, не редактируя плагин. Я думал, что это добавлено в мой файл functions.php, может работать:

 global $eazyest_frontend; remove_action( 'eazyest_gallery_thumbnails', array($eazyest_frontend,'ezg_thumbnails'), 1, 1 ); 

Я, возможно, попробовал сотню вариаций, где я изменил приоритет и т. Д., Но пока ничего не работает.

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

Я новичок в устранении действий, как это делается?

Возможно, я ошибался, но почему бы вам просто не поместить следующую строку в ваши functions.php :

 remove_action('eazyest_gallery_thumbnails', 'ezg_thumbnails'); 

Если у вас есть функция класса, подключенная к действию, вы можете использовать имя класса вместо объекта класса:

 remove_action( 'eazyest_gallery_thumbnails', array('EazyestFrontendClassName', 'ezg_thumbnails') ); 

Прямо сейчас, я не понимаю, почему это не сработает. Просто попробовал действие из одного из моих плагинов.

Спасибо за все комментарии и ответы – я просто решил:

 function remove_eazyest_gallery() { remove_action('eazyest_gallery_thumbnails', 'ezg_thumbnails', 5); } add_action( 'eazyest_gallery_ready', 'remove_eazyest_gallery', 1 ); 

Аналогичный метод можно использовать для скрытия нежелательных уведомлений администратора.

Найдите имя функции, создающей уведомление, которое вы хотите удалить, затем добавьте следующую строку в файл functions.php вашей дочерней темы:

 remove_action( 'admin_notices', 'offending_function_that_is_creating_the_notice' ); 

Теперь только тот специфический nag будет скрыт, а другие (потенциально важные) уведомления из этого плагина все равно пройдут. Это останется эффективным благодаря будущим обновлениям, если разработчик плагина не изменит имя функции, создающей наг (маловероятно).