эта функция выводит пользователя из системы, если я изменяю адрес электронной почты и впоследствии имя пользователя. Существуют ли другие способы запрета выхода пользователя (включая администратора) из-за изменений?
public function audp_wc_admin_update_email_and_username( $user_id ) {
if ( isset( $_POST['email'] ) ) {
if ( ! current_user_can( 'edit_user', $user_id ) ) {
return false;
}
global $wpdb;
$new_login = $_POST['email'];
$new_nicename = sanitize_title( $new_login );
$wpdb -> update( $wpdb -> users,
array( 'user_login' => $new_login, 'user_nicename' => $new_nicename ),
array( 'ID' => $user_id )
);
// This does not update the nickname in the admin section...?
update_user_meta( $user_id, 'nickname', $_POST['email'] );
}
}
$this->loader->add_action( 'woocommerce_save_account_details', $plugin_public, 'audp_wc_update_email_and_username', 20, 1 );