すべてのWP Eメール内のユーザー名のすべてのインスタンスを削除すること、またはユーザー名をEメールアドレスに交換することはできますか?
functions.php
ファイルに、登録からユーザ名を削除し、その電子メールをログインとして使用するコードがありますが、それによってユーザ名がランダムに生成されます。つまり、ユーザー名フィールドを含むユーザーに送信されるすべての電子メールは、username:文字列のランダムな文字列になります。削除/交換します。
以下は、登録からユーザー名を削除するコードです。
add_action( 'bp_core_validate_user_signup', 'custom_validate_user_signup' );
function custom_validate_user_signup($result)
{
unset($result['errors']->errors['user_name']);
if(!empty($result['user_email']) && empty($result['errors']->errors['user_email']))
{
$result['user_name'] = md5($result['user_email']);
$_POST['signup_username'] = $result['user_name'];
}
return $result;
}
私はあなたがこの行からmd5()
を取り除く必要があると思います:
$result['user_name'] = md5($result['user_email']);
私はバディプレスにそれほど馴染みがありませんが、empty($result['errors']->errors['user_email'])
がtrueであることがユーザーが正常に登録されたことを意味するならば、私は以下のようなものを使用します。
wp_update_user( array( 'ID' => $user_id, 'name' => $result['user_email'] ) );