The embed_thumbnail_image_size WordPress PHP filter allows you to modify the thumbnail image size used in the embed template.
Usage
add_filter('embed_thumbnail_image_size', 'your_custom_function', 10, 2); function your_custom_function($image_size, $thumbnail_id) { // your custom code here return $image_size; }
Parameters
- $image_size (string): Thumbnail image size.
- $thumbnail_id (int): Attachment ID.
More information
See WordPress Developer Resources: embed_thumbnail_image_size
Examples
Change Embed Thumbnail Size
Modify the thumbnail size for the embedded posts.
add_filter('embed_thumbnail_image_size', 'change_embed_thumbnail_size', 10, 2); function change_embed_thumbnail_size($image_size, $thumbnail_id) { $image_size = 'medium'; return $image_size; }
Set Custom Image Size for Specific Attachment ID
Change the thumbnail size for a specific attachment ID in the embedded posts.
add_filter('embed_thumbnail_image_size', 'set_custom_image_size_for_attachment', 10, 2); function set_custom_image_size_for_attachment($image_size, $thumbnail_id) { if ($thumbnail_id == 42) { $image_size = 'large'; } return $image_size; }
Set Image Size Based on Post Type
Change the thumbnail size based on the post type in the embedded posts.
add_filter('embed_thumbnail_image_size', 'set_image_size_based_on_post_type', 10, 2); function set_image_size_based_on_post_type($image_size, $thumbnail_id) { $post_type = get_post_type($thumbnail_id); if ($post_type == 'event') { $image_size = 'large'; } return $image_size; }
Set Different Image Sizes for Portrait and Landscape Images
Adjust the thumbnail size depending on whether the image is in portrait or landscape orientation.
add_filter('embed_thumbnail_image_size', 'set_size_based_on_image_orientation', 10, 2); function set_size_based_on_image_orientation($image_size, $thumbnail_id) { $image_data = wp_get_attachment_metadata($thumbnail_id); if ($image_data['width'] > $image_data['height']) { $image_size = 'landscape-size'; } else { $image_size = 'portrait-size'; } return $image_size; }
Force Square Image Size
Force a square image size for the embedded post thumbnails.
add_filter('embed_thumbnail_image_size', 'force_square_image_size', 10, 2); function force_square_image_size($image_size, $thumbnail_id) { $image_size = 'square-size'; return $image_size; }