WordPress.org

Make WordPress Core

Ticket #18428: 18428.fix_wp_users.diff

File 18428.fix_wp_users.diff, 1.3 KB (added by markoheijnen, 7 years ago)

Added get_userdata() to wp.getUsers so it can return all fields like wp.getUser

  • wp-includes/class-wp-xmlrpc-server.php

     
    910910                        'roles'             => $user->roles,
    911911                );
    912912
     913                if ( in_array( 'authors', $fields ) ) {
     914                        $_user['user_login'] = $user_fields['username'];
     915
     916                        $basic_fields = array( 'display_name' );
     917                        $fields = array_merge( $fields, $basic_fields );
     918                }
     919
    913920                if ( in_array( 'all', $fields ) ) {
    914921                        $_user = array_merge( $_user, $user_fields );
    915922                }
     
    918925                                $basic_fields = array( 'username', 'email', 'registered', 'display_name', 'nicename' );
    919926                                $fields = array_merge( $fields, $basic_fields );
    920927                        }
     928
    921929                        $requested_fields = array_intersect_key( $user_fields, array_flip( $fields ) );
    922930                        $_user = array_merge( $_user, $requested_fields );
    923931                }
     
    21182126                $users = get_users( $query );
    21192127
    21202128                $_users = array();
    2121                 foreach ( $users as $user_data ) {
    2122                         if ( current_user_can( 'edit_user', $user_data->ID ) )
     2129                foreach ( $users as $user ) {
     2130                        if ( current_user_can( 'edit_user', $user->ID ) ) {
     2131                                $user_data = get_userdata( $user->ID );
    21232132                                $_users[] = $this->_prepare_user( $user_data, $fields );
     2133                        }
    21242134                }
    21252135                return $_users;
    21262136        }