Создание пользовательской конечной точки для WordPress REST API не регистрируется

Я следил за несколькими примерами и, похоже, не могу зарегистрировать настраиваемую конечную точку. Я создаю настраиваемый плагин и хочу зарегистрировать настраиваемую конечную точку. Вот мой код:

add_action( 'init', 'setup_init' );


function setup_init() {

   add_action( 'rest_api_init', 'wpc_register_wp_api_endpoints' );

   function wpc_register_wp_api_endpoints() {

    register_rest_route( 'setup', '/client/menu', array(
        'methods' => 'GET',
        'callback' => 'menu_setup',
    ));
}

   function menu_setup($request_data){
       return 'hello world';
   }
}

Я захожу на mysite.com/setup/client/menu и получаю сообщение об ошибке «Страница не найдена». Затем я проверяю mysite.com/wp-json/wp/v2/ и не вижу, что мой маршрут / конечная точка зарегистрированы. Мой плагин включен. Я делаю что-то неправильно?


person bstras21    schedule 30.01.2017    source источник


Ответы (1)


При регистрации конечных точек есть одна небольшая ошибка. Заменить строку:

register_rest_route( 'setup', '/client/menu'

с участием:

register_rest_route( 'setup/client', '/menu'

Ниже приведен полный фрагмент вашего кода:

add_action( 'init', 'setup_init' );


function setup_init() {

   add_action( 'rest_api_init', 'wpc_register_wp_api_endpoints' );

   function wpc_register_wp_api_endpoints() {

    register_rest_route( 'setup/client', '/menu', array(
        'methods' => 'GET',
        'callback' => 'menu_setup',
    ));
}

   function menu_setup($request_data){
       return 'hello world';
   }
}

Дайте мне знать, если какой-либо запрос, и примите ответ, если он сработает :)

person Jenil Kanani    schedule 16.09.2019
comment
Спасибо за форматирование @Jee;) Примите ответы, если они верны. Поможет другим :) - person Jenil Kanani; 23.09.2019