2018.08.30 2019.01.20

[WordPress]ユーザー登録やログインをメールアドレスのみ(=ユーザー名を不要)に変更する方法

こんばんは、webエンジニアのゾノ( @ozonosho )です。

さて、今日のブログではWordPressでユーザー登録やログインをメールアドレスのみ(=ユーザー名を不要)に変更する方法を紹介したいと思います。

今回は「半角英数字しか利用できないユーザー名はユーザーに表示したくない」という相談をいただいたので実装してみました。

ちなみに完成形のユーザー登録画面はこんな感じです。

たしかに最近のサービスってメールアドレスのみで登録できるのが普通なので、ユーザーIDみたいなものまでユーザーに設定させるのは嫌だなぁと僕も感じることがあります。

そんなわけでさっそく実装方法を見ていきましょう。

WordPressでユーザー登録やログインをメールアドレスのみ(=ユーザー名を不要)に変更する方法

実装は簡単で、functions.phpに下記のコードを追加してください。

まず大前提として「Wordpressの仕様としてユーザー名を無くすことはできない」ため、ユーザー名にメールアドレスを挿入することで解決します。

1つ目の関数「callback_LoginFormRegister」でその処理を記述しています。
メールアドレスのままユーザー名にしても良いのですが、万が一ユーザー名が表示されてしまったときにメールアドレスが特定されてしまうのはあまりよろしくないので、メールアドレスの@以下のドメインは省く形でユーザー名に登録するようにしました。

2つ目の関数「callback_RegistrationErrors」では、登録フォームでボタンを押された際にユーザー名に関するエラーを省く処理を記述しています。

WordPress側から提供されているフックでは登録フォームのエラー判定前に処理を追加することができないため、エラー判定からユーザー名に関するものを省くことでユーザー名が未記入の状態でも通過させます。

その他の関数については、注釈にあるとおりテキストやデザインを編集しています。

内容はすこし複雑ですが上記コードをコピペするだけでユーザー名が不要のサイトになるので、ぜひ試してみてください。

おわりに

以上、今回の記事ではユーザー登録やログインをメールアドレスのみ(=ユーザー名を不要)に変更する方法を紹介させていただきました。

当サイトではWordpressのカスタマイズ制作依頼を請け負っています。運営中のサイトで何かお困りのことがある方は、下記の記事を参照のうえ気軽にご相談ください。

どんな機能・要望でもOK!『Wordpressのカスタマイズ制作』はじめました。

こんにちは、webエンジニアのゾノ( @ozonosho )です。 このたびWordpressのカスタマイズ制作をはじめました。......

→この記事を読む

ゾノについて

興味ある方を探しています!

このブログと一緒によく読まれているブログ