WooCommerceでユーザー登録を完了時に、メールが届く。しかし、メールの先頭に表示されているは、ユーザー名になっている。
↓こんな感じだ
![](https://mono96.jp/wp-content/uploads/2020/11/1c7215795f8677fdfa1af2f8199f5e36-1024x423.png)
![](https://mono96.jp/wp-content/uploads/2020/11/1c7215795f8677fdfa1af2f8199f5e36-1024x423.png)
しかし、登録したお客様のメールアドレスに加えて、ユーザー名を覚えてもらうのは大変だ。
WooCommerceでお客様がユーザー登録したときに、作るアカウントのユーザーをメールアドレスに設定すると、シンプルになる。
以下のコードを functions.php に追記することで、このカスタマイズが可能となる。
add_filter( 'pre_user_login', 'wc_email_as_username' );
function wc_email_as_username( $user_login ) {
if( isset($_POST['billing_email'] ) ) {
$user_login = $_POST['billing_email'];
}
if( isset($_POST['email'] ) ) {
$user_login = $_POST['email'];
}
return $user_login;
}
公式フォーラム(英語)「Modify the “New Account” Email to display the users first name」を参考にした。
ユーザー登録完了メールに、メールアドレスが表示されている。
![](https://mono96.jp/wp-content/uploads/2020/11/a6492aa48a939c11baae7e95d9f617e8-1024x322.png)
![](https://mono96.jp/wp-content/uploads/2020/11/a6492aa48a939c11baae7e95d9f617e8-1024x322.png)