diff --git a/wp-includes/query.php b/wp-includes/query.php index 2dcc95c949..ddf67d564e 100644 --- a/wp-includes/query.php +++ b/wp-includes/query.php @@ -2767,9 +2767,12 @@ class WP_Query { $r_status = array(); $p_status = array(); $e_status = array(); - if ( in_array('any', $q_status) ) { - foreach ( get_post_stati( array('exclude_from_search' => true) ) as $status ) - $e_status[] = "$wpdb->posts.post_status <> '$status'"; + if ( in_array( 'any', $q_status ) ) { + foreach ( get_post_stati( array( 'exclude_from_search' => true ) ) as $status ) { + if ( ! in_array( $status, $q_status ) ) { + $e_status[] = "$wpdb->posts.post_status <> '$status'"; + } + } } else { foreach ( get_post_stati() as $status ) { if ( in_array( $status, $q_status ) ) {