diff --git a/src/wp-admin/includes/class-wp-users-list-table.php b/src/wp-admin/includes/class-wp-users-list-table.php index bf73df9e99..e78fa20312 100644 --- a/src/wp-admin/includes/class-wp-users-list-table.php +++ b/src/wp-admin/includes/class-wp-users-list-table.php @@ -300,6 +300,7 @@ class WP_Users_List_Table extends WP_List_Table { current_action() ) { $editable_roles = get_editable_roles(); $role = $_REQUEST['new_role']; + // Mocking the `none` role so we are able to save it to the database + $editable_roles['none'] = array( + 'name' => __( '— No role for this site —' ), + ); + if ( ! $role || empty( $editable_roles[ $role ] ) ) { wp_die( __( 'Sorry, you are not allowed to give users that role.' ), 403 ); } + if ( 'none' === $role ) { + $role = ''; + } + $userids = $_REQUEST['users']; $update = 'promote'; foreach ( $userids as $id ) {