get_oembed_response_data_for_url() WordPress Function
The get_oembed_response_data_for_url() function is used to get the oEmbed response data for a given URL. This function is useful for retrieving oEmbed data from a URL that is not supported by the built-in oEmbed functions in WordPress.
get_oembed_response_data_for_url( string $url, array $args ) #
Retrieves the oEmbed response data for a given URL.
Parameters
- $url
(string)(Required)The URL that should be inspected for discovery
<link>
tags.- $args
(array)(Required)oEmbed remote get arguments.
Return
(object|false) oEmbed response data if the URL does belong to the current site. False otherwise.
Source
File: wp-includes/embed.php
function get_oembed_response_data_for_url( $url, $args ) { $switched_blog = false; if ( is_multisite() ) { $url_parts = wp_parse_args( wp_parse_url( $url ), array( 'host' => '', 'path' => '/', ) ); $qv = array( 'domain' => $url_parts['host'], 'path' => '/', 'update_site_meta_cache' => false, ); // In case of subdirectory configs, set the path. if ( ! is_subdomain_install() ) { $path = explode( '/', ltrim( $url_parts['path'], '/' ) ); $path = reset( $path ); if ( $path ) { $qv['path'] = get_network()->path . $path . '/'; } } $sites = get_sites( $qv ); $site = reset( $sites ); // Do not allow embeds for deleted/archived/spam sites. if ( ! empty( $site->deleted ) || ! empty( $site->spam ) || ! empty( $site->archived ) ) { return false; } if ( $site && get_current_blog_id() !== (int) $site->blog_id ) { switch_to_blog( $site->blog_id ); $switched_blog = true; } } $post_id = url_to_postid( $url ); /** This filter is documented in wp-includes/class-wp-oembed-controller.php */ $post_id = apply_filters( 'oembed_request_post_id', $post_id, $url ); if ( ! $post_id ) { if ( $switched_blog ) { restore_current_blog(); } return false; } $width = isset( $args['width'] ) ? $args['width'] : 0; $data = get_oembed_response_data( $post_id, $width ); if ( $switched_blog ) { restore_current_blog(); } return $data ? (object) $data : false; }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
5.0.0 | Introduced. |