rest_output_link_wp_head() WP 4.4.0
Выводит ссылку на корневой 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).
Использование
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 5.6.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" type="application/json" href="%s" />', esc_url( rest_url( $resource ) ) );
}
}