From 126a488b6fa37de8d119b9a06381656c7f0ef7db Mon Sep 17 00:00:00 2001 From: whyisjake Date: Thu, 28 Jan 2021 00:09:57 +0000 Subject: [PATCH] Media: Ensure that wp_get_attachment_metadata can return values from the global $post, if avaiable. In [49084] (for #50679), wp_get_attachment_metadata() was changed to improve performance, but it had the side effect of eliminating the ability to call it with no arguments and have it default to using the global $post. This change restores that ability, while keeping the performance improvements from the original change. This changeset brings [50039] to the 5.6 branch. Fixes #52196. Props cfinke, hellofromTonya, mukesh27, dilipbheda, Mista-Flo, audrasjb, SergeyBiryukov, whyisjake. Built from https://develop.svn.wordpress.org/branches/5.6@50040 git-svn-id: http://core.svn.wordpress.org/branches/5.6@49741 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-includes/post.php | 12 +++++++++++- wp-includes/version.php | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/wp-includes/post.php b/wp-includes/post.php index a78b266a12..72d9d07bf1 100644 --- a/wp-includes/post.php +++ b/wp-includes/post.php @@ -6071,7 +6071,7 @@ function wp_delete_attachment_files( $post_id, $meta, $backup_sizes, $file ) { * * @since 2.1.0 * - * @param int $attachment_id Attachment post ID. Defaults to global $post. + * @param int $attachment_id Attachment post ID. Default 0. * @param bool $unfiltered Optional. If true, filters are not run. Default false. * @return array|false { * Attachment metadata. False on failure. @@ -6087,6 +6087,16 @@ function wp_delete_attachment_files( $post_id, $meta, $backup_sizes, $file ) { function wp_get_attachment_metadata( $attachment_id = 0, $unfiltered = false ) { $attachment_id = (int) $attachment_id; + if ( ! $attachment_id ) { + $post = get_post(); + + if ( ! $post ) { + return false; + } + + $attachment_id = $post->ID; + } + $data = get_post_meta( $attachment_id, '_wp_attachment_metadata', true ); if ( ! $data ) { diff --git a/wp-includes/version.php b/wp-includes/version.php index 9b90ab944a..cd664e2930 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -13,7 +13,7 @@ * * @global string $wp_version */ -$wp_version = '5.6.1-alpha-50038'; +$wp_version = '5.6.1-alpha-50040'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.