WP_REST_Users_Controller::get_items_permissions_check PHP Method

get_items_permissions_check() public method

Permissions check for getting all users.
Since: 4.7.0
public get_items_permissions_check ( WP_REST_Request $request ) : true | WP_Error
$request WP_REST_Request Full details about the request.
return true | WP_Error True if the request has read access, otherwise WP_Error object.
    public function get_items_permissions_check($request)
    {
        // Check if roles is specified in GET request and if user can list users.
        if (!empty($request['roles']) && !current_user_can('list_users')) {
            return new WP_Error('rest_user_cannot_view', __('Sorry, you are not allowed to filter users by role.'), array('status' => rest_authorization_required_code()));
        }
        if ('edit' === $request['context'] && !current_user_can('list_users')) {
            return new WP_Error('rest_forbidden_context', __('Sorry, you are not allowed to list users.'), array('status' => rest_authorization_required_code()));
        }
        if (in_array($request['orderby'], array('email', 'registered_date'), true) && !current_user_can('list_users')) {
            return new WP_Error('rest_forbidden_orderby', __('Sorry, you are not allowed to order users by this parameter.'), array('status' => rest_authorization_required_code()));
        }
        return true;
    }