diff --git a/wp-includes/media.php b/wp-includes/media.php index 7f735577c9..0d9b3708c6 100644 --- a/wp-includes/media.php +++ b/wp-includes/media.php @@ -801,6 +801,7 @@ function gallery_shortcode($attr) { 'captiontag' => 'dd', 'columns' => 3, 'size' => 'thumbnail', + 'ids' => '', 'include' => '', 'exclude' => '' ), $attr)); @@ -809,6 +810,12 @@ function gallery_shortcode($attr) { if ( 'RAND' == $order ) $orderby = 'none'; + if ( !empty( $ids ) ) { + // 'ids' is explicitly ordered + $orderby = 'post__in'; + $include = $ids; + } + if ( !empty($include) ) { $include = preg_replace( '/[^0-9,]+/', '', $include ); $_attachments = get_posts( array('include' => $include, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => $order, 'orderby' => $orderby) );