WP_oEmbed_Controller::get_item( WP_REST_Request $request )

Callback for the embed API endpoint.

Description

Returns the JSON object for the post.

Parameters

$request

(WP_REST_Request) (Required) Full data about the request.

Return

(array|WP_Error) oEmbed response data or WP_Error on failure.

Source

File: wp-includes/class-wp-oembed-controller.php

public function get_item( $request ) {
		$post_id = url_to_postid( $request['url'] );

		/**
		 * Filters the determined post ID.
		 *
		 * @since 4.4.0
		 *
		 * @param int    $post_id The post ID.
		 * @param string $url     The requested URL.
		 */
		$post_id = apply_filters( 'oembed_request_post_id', $post_id, $request['url'] );

		$data = get_oembed_response_data( $post_id, $request['maxwidth'] );

		if ( ! $data ) {
			return new WP_Error( 'oembed_invalid_url', get_status_header_desc( 404 ), array( 'status' => 404 ) );
		}

		return $data;
	}

Changelog

Version Description
4.4.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_oembed_controller/get_item