rest_url_prefix
Позволяет изменить базу (префикс маршрутов) REST API. Например, с wp-json
на api
.
Использование
add_filter( 'rest_url_prefix', 'wp_kama_rest_url_prefix_filter' ); /** * Function for `rest_url_prefix` filter-hook. * * @param string $prefix URL prefix. * * @return string */ function wp_kama_rest_url_prefix_filter( $prefix ){ // filter... return $prefix; }
- $prefix(строка)
- Текущий префикс всех марушрутов REST API.
По умолчанию: 'wp-json'
Примеры
#1 Изменим префикс REST API с wp-json на api
## Изменяет префикс REST API с `wp-json` на `api` add_filter( 'rest_url_prefix', 'change_rest_api_prefix' ); function change_rest_api_prefix( $slug ){ return 'api'; } ## Вместе со сменой префикса, хорошо бы добавить новое имя в черный список add_filter( 'subdirectory_reserved_names', function( $names ){ $names[] = 'api'; return $names; } );
Теперь нужно обновить правила перезаписи - нужно зайти на страницу админки «Постоянные ссылки».
Все, теперь абсолютно все REST маршруты будут начинаться с /api/
а не с /wp-json/
.
Например, эндпоинт (маршрут, ссылка) просмотра записи с ID 1 будет такой:
http://example.com/api/wp/v2/posts/1
Список изменений
С версии 4.4.0 | Введена. |
Где вызывается хук
rest_url_prefix
wp-includes/rest-api.php 431
return apply_filters( 'rest_url_prefix', 'wp-json' );