Ошибка: call_user_func_array() ожидает, что параметр 1 будет допустимым обратным вызовом

3 авг. 2013 г., 17:11:21
Просмотры: 130K
Голосов: 11

У меня возникла проблема после обновления WordPress до версии 3.6. Ниже приведены ошибки, которые отображаются в панели администратора WordPress, но не на фронтенде сайта.

Предупреждение: call_user_func_array() ожидает, что параметр 1 будет допустимым обратным вызовом, функция 'regis_options' не найдена или некорректное имя функции в wp-includes/plugin.php на строке 406

Предупреждение: Невозможно изменить информацию заголовка – заголовки уже отправлены (вывод начат в wp-includes/plugin.php:406) в wp-includes/option.php на строке 571

Предупреждение: Невозможно изменить информацию заголовка – заголовки уже отправлены (вывод начат в wp-includes/plugin.php:406) в wp-includes/option.php на строке 572

1
Комментарии

Эта ошибка также может возникнуть из-за некорректного вызова функции wp_register_widget_control

Hannah Hannah
7 окт. 2020 г. 00:13:12
Все ответы на вопрос 5
1
14

Где-то в вашей теме или плагинах есть строка, подобная этой:

add_filter( 'something', 'regis_options' );

Также это может быть add_action(). Найдите этот фрагмент кода и удалите или исправьте его.

Остальные ошибки являются следствием первой. Выводимое сообщение об ошибке вызывает вывод и, следовательно, HTTP-заголовки, поэтому PHP/WP не может отправить другие заголовки. Они исчезнут, когда вы исправите первую ошибку.

3 авг. 2013 г. 17:25:37
Комментарии

Проблема в том, что плагин "WP Content Copy Protection" не совместим с WordPress 3.6. Я отключил этот плагин, и ЭТО РАБОТАЕТ...

Sufalamdev Sufalamdev
3 авг. 2013 г. 17:42:03
1
11
Warning: call_user_func_array()  

Обычно возникает из-за неправильного объявления фильтра или действия.

add_filter ( 'action_tag' , array( $this , 'my_callback' ) , 30 );

Приоритет должен указываться за пределами параметра callback-массива. Это решило мою проблему.

4 июн. 2015 г. 15:06:33
Комментарии

Благодарю! Это именно моя проблема.

Marty McGee Marty McGee
15 дек. 2020 г. 06:01:11
0

Привет, попробуй это решение:

Добавь это в functions.php:

function regis_options($args) {
   return $args;
}

Также добавь это в твой class-wp-hook.php:

public function regis_options($args) {
echo '<pre>' . var_export($args, true) . '</pre>';
echo '<pre>' . var_dump(debug_backtrace()) . '</pre>';
return $args;
}
8 окт. 2018 г. 20:21:53
0

Я оставил пробел в конце строки обратного вызова при вызове фильтра

add_filter( 'something', 'regis_options ' ); 

Вместо

add_filter( 'something', 'regis_options');
4 янв. 2020 г. 07:31:14
0

Эта ошибка также возникает при вызове несуществующей функции. Чтобы решить эту проблему, вам необходимо определить функцию 'regis_options'. Попробуйте что-то вроде:

function regis_options(){ 
echo 'test';
}
18 сент. 2020 г. 14:57:50