From cdb15e353a99a41885859a561b427f510e0f2df0 Mon Sep 17 00:00:00 2001 From: Anthony Burchell Date: Sun, 7 Nov 2021 20:36:11 +0000 Subject: [PATCH] Media: Add filter for post thumbnail id. Introduces new filter `post_thumbnail_id` which allows overriding the default id returned from `get_post_thumbnail_id()`. Props engelen, alexvorn2, gilbitron, sebastianpisula, SergeyBiryukov, leogermani, rzen, joemcgill, audrasjb. Fixes #23983. git-svn-id: https://develop.svn.wordpress.org/trunk@52028 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/post-thumbnail-template.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/wp-includes/post-thumbnail-template.php b/src/wp-includes/post-thumbnail-template.php index 6c8fa584a1..79b9a55d3a 100644 --- a/src/wp-includes/post-thumbnail-template.php +++ b/src/wp-includes/post-thumbnail-template.php @@ -57,7 +57,17 @@ function get_post_thumbnail_id( $post = null ) { return false; } - return (int) get_post_meta( $post->ID, '_thumbnail_id', true ); + $thumbnail_id = (int) get_post_meta( $post->ID, '_thumbnail_id', true ); + + /** + * Filters post thumbnail ID. + * + * @since 5.9.0 + * + * @param int|false $thumbnail_id Post thumbnail ID or false if the post does not exist. + * @param int|WP_Post|null $post Post ID or WP_Post object. Default is global `$post`. + */ + return (int) apply_filters( 'post_thumbnail_id', $thumbnail_id, $post ); } /**