get_oembed_response_data_rich()

最后更新于:2021-11-26 10:34:48

get_oembed_response_data_rich( array$data, GC_Post$post, int$width, int$height)

Filters the oEmbed response data to return an iframe embed code.

参数

$data

(array) (Required) The response data.

$post

(GC_Post) (Required) The post object.

$width

(int) (Required) The requested width.

$height

(int) (Required) The calculated height.

响应

(array) The modified response data.

源文件

文件: gc-includes/embed.php

function get_oembed_response_data_rich( $data, $post, $width, $height ) {
	$data['width']  = absint( $width );
	$data['height'] = absint( $height );
	$data['type']   = 'rich';
	$data['html']   = get_post_embed_html( $width, $height, $post );

	// Add post thumbnail to response if available.
	$thumbnail_id = false;

	if ( has_post_thumbnail( $post->ID ) ) {
		$thumbnail_id = get_post_thumbnail_id( $post->ID );
	}

	if ( 'attachment' === get_post_type( $post ) ) {
		if ( gc_attachment_is_image( $post ) ) {
			$thumbnail_id = $post->ID;
		} elseif ( gc_attachment_is( 'video', $post ) ) {
			$thumbnail_id = get_post_thumbnail_id( $post );
			$data['type'] = 'video';
		}
	}

	if ( $thumbnail_id ) {
		list( $thumbnail_url, $thumbnail_width, $thumbnail_height ) = gc_get_attachment_image_src( $thumbnail_id, array( $width, 99999 ) );
		$data['thumbnail_url']                                      = $thumbnail_url;
		$data['thumbnail_width']                                    = $thumbnail_width;
		$data['thumbnail_height']                                   = $thumbnail_height;
	}

	return $data;
}