diff --git a/wp-includes/rewrite.php b/wp-includes/rewrite.php
index 235c0c82..dab4b354 100644
--- a/wp-includes/rewrite.php
+++ b/wp-includes/rewrite.php
@@ -398,11 +398,11 @@ function wp_resolve_numeric_slug_conflicts( $query_vars = array() ) {
 	 * for month-slug clashes when `is_month` *or* `is_day`.
 	 */
 	$compare = '';
-	if ( 0 === $postname_index && ( isset( $query_vars['year'] ) || isset( $query_vars['monthnum'] ) ) ) {
+	if ( 0 === $postname_index && ( ( isset( $query_vars['year'] ) && ! is_array( $query_vars['year'] ) ) || ( isset( $query_vars['monthnum'] ) && ! is_array( $query_vars['monthnum'] ) ) ) ) {
 		$compare = 'year';
-	} elseif ( $postname_index && '%year%' === $permastructs[ $postname_index - 1 ] && ( isset( $query_vars['monthnum'] ) || isset( $query_vars['day'] ) ) ) {
+	} elseif ( $postname_index && '%year%' === $permastructs[ $postname_index - 1 ] && ( isset( $query_vars['monthnum'] ) && ! is_array( $query_vars['monthnum'] ) ) || ( isset( $query_vars['day'] ) && ! is_array( $query_vars['day'] ) ) ) {
 		$compare = 'monthnum';
-	} elseif ( $postname_index && '%monthnum%' === $permastructs[ $postname_index - 1 ] && isset( $query_vars['day'] ) ) {
+	} elseif ( $postname_index && '%monthnum%' === $permastructs[ $postname_index - 1 ] && ( isset( $query_vars['day'] ) && ! is_array( $query_vars['day'] ) ) ) {
 		$compare = 'day';
 	}
 
