wp_create_user() の使い方|説明・引数・注意点

説明

wp_create_user() は、新規ユーザーを作成する関数です(ユーザー名、パスワード、メールのみの簡易版)。

基本構文

wp_create_user( string $username, string $password, string $email = '' ): int|WP_Error

引数

  • $username:ログイン名
  • $password:パスワード(平文で渡す)
  • $email:メールアドレス

戻り値

作成したユーザーID。失敗時は WP_Error。

使い方(サンプル)

$id = wp_create_user( 'newuser', 'strong-password', 'new@example.com' );
if ( is_wp_error( $id ) ) {
	error_log( $id->get_error_message() );
}

注意点

  • より細かい項目を指定するなら wp_insert_user() を使います。
  • パスワードをソースに直書きしないようにします。
  • 作成されたユーザーの権限は、既定のロール(通常は購読者)です。

実務での使いどころ

  • ユーザー名・パスワード・メールアドレスだけで、簡単にユーザーを作るとき。
  • インポートや、自動登録の処理で、ユーザーを作るとき。

よくあるミスと対処

  • 戻り値が WP_Error のときを、考えていない。ユーザー名やメールが重複していると、エラーが返る。
  • パスワードを、コードの中に直接書いている。
  • ロールや表示名など、他の項目も指定したいのに、これを使っている。その場合は wp_insert_user() を使う。

NG例

$user_id = wp_create_user( 'taro', 'password123', 'taro@example.com' ); // エラーの確認がない

OK例

$user_id = wp_create_user( 'taro', wp_generate_password(), 'taro@example.com' );
if ( is_wp_error( $user_id ) ) {
	return;
}

使い分け早見表

やりたいこと 使うもの
最小限の項目で作る wp_create_user()
ロールなど、詳細を指定して作る・更新する wp_insert_user()
既存のユーザーを更新する wp_update_user()

関連項目

wp_insert_user()、username_exists()、email_exists()

公式リファレンス:wp_create_user() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました