Фильтр plugins_api
-
Есть 2 плагина, для которых реализовано обновление с моего сервера.
1-й.add_filter('plugins_api', array($this, 'yfympe_plugin_api_checkInfo'), 10, 3); public function yfympe_plugin_api_checkInfo($result, $action, $args) { if (!isset($args->slug) || ($args->slug !== yfympe_SLUG)) { // это просмотр инфы другого плагина yfym_error_log('Это просмотр инфы другого плагина! yfympe_SLUG = '. yfympe_SLUG, 0); return false; } else { yfym_error_log('Это просмотр инфы Плагина 1! yfympe_SLUG = '. yfympe_SLUG, 0); } ... }2-й (разница кода по сути в префиксах)
add_filter('plugins_api', array($this, 'yfymp_plugin_api_checkInfo'), 10, 3); public function yfymp_plugin_api_checkInfo($result, $action, $args) { if (!isset($args->slug) || ($args->slug !== yfymp_SLUG)) { // это просмотр инфы другого плагина yfym_error_log('Это просмотр инфы другого плагина! yfymp_SLUG = '. yfymp_SLUG, 0); return false; } else { yfym_error_log('Это просмотр инфы Плагина 2! yfymp_SLUG = '. yfymp_SLUG, 0); } ... }Если для обоих плагинов доступно обновление с моего сервера, то нажатие на «посмотреть информацию о версии такой-то» приводит к тому, что для одного плагина инфа показывается, а для другого нет. (до тех пор, пока 1-й не обновишь).
Посмотрев логи я понял, что всегда отрабатывает функция для Плагина 2. Т.к используется один и тот же фильтр.
Есть ли какая-то возможность используя один и тот же фильтр делать так, чтобы для одного плагина отрабатывала одна функция для другого другая? А то в моем случае как бы выходит, что один плагин переписывает фильтр другого плагина.
(А ведь и др разрабы тоже работают с данным фильтром) и в результате может получиться, что и у них и у меня пахать не будет.
Тема «Фильтр plugins_api» закрыта для новых ответов.