一种替代方法是修改$_POST[\'user_login\']
提交新注册表时输入值,即WP处理注册表之前。实现这一目标的好方法是login_form_register
在处理和呈现注册表之前激发。login_init
也可以,但需要更多的工作来确保register
行动
add_action(\'login_form_register\', \'custom_user_login\');
function custom_user_login() {
// make sure regisration form is submitted
if ($_SERVER[\'REQUEST_METHOD\'] != \'POST\')
return;
// base of user_login, change it according to ur needs
$ulogin = \'random-user\';
// make user_login unique so WP will not return error
$check = username_exists($ulogin);
if (!empty($check)) {
$suffix = 2;
while (!empty($check)) {
$alt_ulogin = $ulogin . \'-\' . $suffix;
$check = username_exists($alt_ulogin);
$suffix++;
}
$ulogin = $alt_ulogin;
}
$_POST[\'user_login\'] = $ulogin;
}