rest_output_link_wp_head()
Выводит ссылку на корневой REST API маршрут в секции <head> на всех страницах сайта.
Ссылка имеет вид:
<link rel='https://api.w.org/' href='http://wp-test.ru/wp-json/' />
Такая ссылка является уведомлением для клиентских приложений, что у сайта есть свой API.
По умолчанию в WordPress эта функция вызывается через хук wp_head:
add_action( 'wp_head', 'rest_output_link_wp_head', 10, 0 );
Аналогичная ссылка добавляется в заголовки ответа сервера функцией rest_output_link_header(), которая по умолчанию вешается на хук:
add_action( 'template_redirect', 'rest_output_link_header', 11, 0 );
Работает на основе: get_rest_url()
1 раз — 0.004168 сек (очень медленно) | 50000 раз — 4.19 сек (быстро) | PHP 7.1.11, WP 4.9.8
Хуков нет.
Возвращает
null
. Ничего (null).
Использование
rest_output_link_wp_head();
Примеры
#1 Удалим ссылку на REST API
Данный код не отключает REST API, а лишь отменяет вывод ссылки на всех страницах сайта. Код можно вставлять в плагин или functions.php темы напрямую.
remove_action( 'wp_head', 'rest_output_link_wp_head' );
Заметки
- Смотрите: get_rest_url()
Список изменений
С версии 4.4.0 | Введена. |
Код rest_output_link_wp_head() rest output link wp head WP 6.7.2
function rest_output_link_wp_head() { $api_root = get_rest_url(); if ( empty( $api_root ) ) { return; } printf( '<link rel="https://api.w.org/" href="%s" />', esc_url( $api_root ) ); $resource = rest_get_queried_resource_route(); if ( $resource ) { printf( '<link rel="alternate" title="%1$s" type="application/json" href="%2$s" />', _x( 'JSON', 'REST API resource link name' ), esc_url( rest_url( $resource ) ) ); } }