2016-06-14 4 views
5

Привет, парень Пожалуйста, помогите мне установить REST API-плагин WP и я добавляю какой-то определенный маршрут, и все, что он работает нормально, как я привык. Но я хочу отключить маршрут по умолчанию: /wp-json/ /wp-json/wp/v2/postsRest API plugin wordpress отключить маршруты по умолчанию

ответ

1

Вы можете использовать это в своем плагине для удаления всех маршрутов по умолчанию.

remove_action('rest_api_init', 'create_initial_rest_routes', 0); 
6

По Wordpress 4.7, кажется, быть следующими (заметим, 99 вместо 0):

remove_action('rest_api_init', 'create_initial_rest_routes', 99); 

Однако это будет также удалить все маршруты типа контента. Поэтому вместо этого вы можете использовать:

add_filter('rest_endpoints', function($endpoints) { 

    unset($endpoints['/wp/v2/users']); 
    // etc 

    return $endpoints; 
}); 
+0

есть ли более чистый способ для этого? –

+0

.... to? Что конкретно? Чтобы удалить маршруты api по умолчанию, вы не можете поиграть с одним слоем выше. Он использует 'actions' и' filters', что является довольно чистым и абстрактным способом решения изменений в функциональности ядра. – Chris

+0

Я имею в виду ваше второе мнение, потому что, когда я удаляю 'rest_api_init', он также очищает пользовательские маршруты (как вы также описываете). В основном мне нужно отключить маршруты по умолчанию и добавить настраиваемые маршруты. –

Смежные вопросы