From de7375b5d1d7a054a8d43da52d78384270dadb52 Mon Sep 17 00:00:00 2001 From: Andrew Nacin Date: Wed, 17 Jul 2013 04:46:09 +0000 Subject: [PATCH] Avoid a sanitize_key() call on ID, as this causes it to be lowercased. wp_dropdown_users() requires user_login as a fallback; specify it for get_users(). see #21767. git-svn-id: http://core.svn.wordpress.org/trunk@24719 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-includes/user.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/wp-includes/user.php b/wp-includes/user.php index 9d307d3d01..bc583a5789 100644 --- a/wp-includes/user.php +++ b/wp-includes/user.php @@ -392,8 +392,10 @@ class WP_User_Query { $qv['fields'] = array_unique( $qv['fields'] ); $this->query_fields = array(); - foreach ( $qv['fields'] as $field ) - $this->query_fields[] = $wpdb->users . '.' . sanitize_key( $field ); + foreach ( $qv['fields'] as $field ) { + $field = 'ID' === $field ? 'ID' : sanitize_key( $field ); + $this->query_fields[] = "$wpdb->users.$field"; + } $this->query_fields = implode( ',', $this->query_fields ); } elseif ( 'all' == $qv['fields'] ) { $this->query_fields = "$wpdb->users.*"; @@ -1029,7 +1031,7 @@ function wp_dropdown_users( $args = '' ) { extract( $r, EXTR_SKIP ); $query_args = wp_array_slice_assoc( $r, array( 'blog_id', 'include', 'exclude', 'orderby', 'order', 'who' ) ); - $query_args['fields'] = array( 'ID', $show ); + $query_args['fields'] = array( 'ID', 'user_login', $show ); $users = get_users( $query_args ); $output = '';