From cee49addad3eec812be8cfc2c03d71e8fc801ea3 Mon Sep 17 00:00:00 2001 From: Mike Schroder Date: Tue, 9 May 2017 23:25:56 +0000 Subject: [PATCH] Media: Optionally return attachment id from `media_sideload_image()`. Introduces option to `$return` parameter to return the attachment id created after a successful image sideload. Props slbmeh, kawauso, alexkingorg, SergeyBiryukov, georgestephanis, DrewAPicture, nacin, trepmal, mattheu, kraftbj, whyisjake, dotancohen, MrGregWaugh, danielbachhuber. Fixes #19629. git-svn-id: https://develop.svn.wordpress.org/trunk@40597 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-admin/includes/media.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/wp-admin/includes/media.php b/src/wp-admin/includes/media.php index c4090174fa..4a2e7c2e72 100644 --- a/src/wp-admin/includes/media.php +++ b/src/wp-admin/includes/media.php @@ -852,11 +852,12 @@ function wp_media_upload_handler() { * * @since 2.6.0 * @since 4.2.0 Introduced the `$return` parameter. + * @since 4.8.0 Introduced the 'id' option within the `$return` parameter. * * @param string $file The URL of the image to download. * @param int $post_id The post ID the media is to be associated with. * @param string $desc Optional. Description of the image. - * @param string $return Optional. Accepts 'html' (image tag html) or 'src' (URL). Default 'html'. + * @param string $return Optional. Accepts 'html' (image tag html) or 'src' (URL), or 'id' (attachment ID). Default 'html'. * @return string|WP_Error Populated HTML img tag on success, WP_Error object otherwise. */ function media_sideload_image( $file, $post_id, $desc = null, $return = 'html' ) { @@ -886,6 +887,9 @@ function media_sideload_image( $file, $post_id, $desc = null, $return = 'html' ) if ( is_wp_error( $id ) ) { @unlink( $file_array['tmp_name'] ); return $id; + // If attachment id was requested, return it early. + } elseif ( $return === 'id' ) { + return $id; } $src = wp_get_attachment_url( $id );