Я пытаюсь создать новую пользовательскую конечную точку API REST в веб-приложении Wordpress, чтобы интегрировать ее с ReactJS. Я использовал встроенные в Wordpress вызовы REST API, которые работают нормально.
Я использую Wordpress 5.0.3 и php 7.2.
Так я пишу функцию в файле function.php темы.
function register_our_custom_api_routes() {
register_rest_route( 'custom/v1', '/endpoint/', array(
'methods' => WP_REST_Server::READABLE,
'callback' => 'our_custom_callback_function',
)
);}
Функция обратного вызова
function our_custom_callback_function( ) {
$data = [ 'foo' => 'bar' ];
$response = new WP_REST_Response($data, 200);
$response->set_headers([ 'Cache-Control' => 'must-revalidate, no-cache, no-store, private' ]);
return $response;}
Затем добавьте
add_action( 'rest_api_init', 'register_our_custom_api_routes' );
Он продолжает вызывать rest_no_route, ошибка 404, когда я пытаюсь получить доступ к http://localhost/shopper/wp-json/custom/v1/endpoint в моем браузере.
Я пробовал это с браузерами Firefox и Chrome. Кроме того, я попытался с помощью функции 'curl -X' на моем терминале и попытался с почтальоном и получил ту же ошибку.
{"code": "rest_no_route", "message": "Не найдено ни одного маршрута, соответствующего URL и методу запроса", "data": {"status": 404}}
Я почти все перепробовал, но получаю ту же ошибку. Это одна статья , найденная на странице обмена Wordpress в стеке.
Также я разместил это на странице обмена Wordpress в стеке ссылка
Я слышал несколько статей о том, что пользовательский вызов REST API изменился в Wordpress 5.0.3.
Я что-то пропустил здесь?