我确信wp_update_user()
应该这样做。
它甚至将user\\u login作为param获取,但当您设置此param时,它似乎会忽略它。
所以这段代码看起来不错,但它并没有像您希望的那样工作:(:
wp_update_user(
[\'ID\' => $user_id, \'user_login\' => $new_login]
);
您必须调用自定义SQL查询来更新user\\u登录:
global $wpdb;
$wpdb->update(
$wpdb->users,
[\'user_login\' => $new_user_login],
[\'ID\' => $user_id]
);
它工作正常,我认为不会有任何严重后果,因为WP使用用户ID向用户分配帖子/评论(等等)。
我能想到的唯一问题是,当这个用户当前登录时,他将在user\\u登录更改后注销。