функция since 4.4.0

_oembed_rest_pre_serve_request()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

_oembed_rest_pre_serve_request( bool $served, WP_HTTP_Response $result, WP_REST_Request $request, WP_REST_Server $server ): bool

Описание

Это делается только для конечной точки API oEmbed, которая поддерживает оба формата.

Оригинал (английский)

This is only done for the oEmbed API endpoint, which supports both formats.

Параметры

$served bool обязательный
Был ли запрос уже обработан.
$result WP_HTTP_Response обязательный
Результат, отправляемый клиенту. Обычно это WP_REST_Response.
$request WP_REST_Request обязательный
Запрос, использованный для формирования ответа.
$server WP_REST_Server обязательный
Экземпляр сервера.

Возвращаемое значение

bool

Исходный код

wp-includes/embed.php:782

function _oembed_rest_pre_serve_request( $served, $result, $request, $server ) {
	$params = $request->get_params();

	if ( '/oembed/1.0/embed' !== $request->get_route() || 'GET' !== $request->get_method() ) {
		return $served;
	}

	if ( ! isset( $params['format'] ) || 'xml' !== $params['format'] ) {
		return $served;
	}

	// Embed links inside the request.
	$data = $server->response_to_data( $result, false );

	if ( ! class_exists( 'SimpleXMLElement' ) ) {
		status_header( 501 );
		die( get_status_header_desc( 501 ) );
	}

	$result = _oembed_create_xml( $data );

	// Bail if there's no XML.
	if ( ! $result ) {
		status_header( 501 );
		die( get_status_header_desc( 501 ) );
	}

	if ( ! headers_sent() ) {
		$server->send_header( 'Content-Type', 'text/xml; charset=' . get_option( 'blog_charset' ) );
	}

	echo $result;

	return true;
}

История изменений

ВерсияОписание
4.4.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.