Обработка POST запроса REST API wordpress
Проблема заключается в чём, мне надо с фронта отправить некоторый JSON и прочитать его. Проблемы в прочтении нету, но не могу найти нигде как зарегистрировать POST/PUT запрос в вордпресе.
add_action('rest_api_init', function () {
register_rest_route('fcs', 'send', [
'method' => 'POST',
'callback' => 'query_put_test',
]);
});
Функция, что вызывается
function query_put_test(){
return 'test';
}
Я не поимаю что куда записовать, чтобы в колбеке получить данные, отправленные с фронта, зарание спасибо
Ответы (1 шт):
Автор решения: Darth KYL
→ Ссылка
вы не правильно передаете параметр methods при регистрации маршрута.
для получения данных отправленых методом пост вы можете использовать один из вариантов:
$request->get_param( 'some_param' ) // где "some_param" название парметра который вы передаете
$request->get_params(); // метод для получения всех параметров
$request->get_body(); // метод для получения тела запроса
при этом нужно не забыть что калбак функция принимает параметр реквест.
Все вместе может выглядеть вот так:
add_action('rest_api_init', function () {
register_rest_route('fcs', 'send', [
'methods' => 'POST',
'callback' => 'query_put_test',
]);
});
function query_put_test( WP_REST_Request $request ){
return print_r( $request->get_body(), true);
}
подробнее о создании маршрута можно прочитаь здесь register_rest_route