説明
wp_update_user() は、既存ユーザーの情報を更新する関数です。
基本構文
wp_update_user( array|object|WP_User $userdata ): int|WP_Error
引数
$userdata:IDと、更新したい項目
戻り値
ユーザーID。失敗時は WP_Error。
使い方(サンプル)
wp_update_user( array(
'ID' => 5,
'display_name' => '新しい表示名',
) );
注意点
IDを必ず指定します。- パスワードを変更すると、ログイン中のセッションが切れることがあります。
実務での使いどころ
- ユーザーの表示名やメールアドレス、ロールを、プログラムから変更するとき。
- パスワードを、再設定するとき。
よくあるミスと対処
IDを指定していない。更新の対象が決まらない。user_passに、すでにハッシュ化された値を渡している。平文を渡すと、自動でハッシュ化される。現在のハッシュと違うハッシュ値を渡すと、二重にハッシュ化される。- 戻り値が
WP_Errorのときを、考えていない。 - ログイン名(
user_login)は、変更できない。
NG例
wp_update_user( array( 'user_email' => 'new@example.com' ) ); // ID がない
OK例
$result = wp_update_user( array(
'ID' => $user_id,
'user_email' => 'new@example.com',
) );
if ( is_wp_error( $result ) ) {
return;
}
使い分け早見表
| やりたいこと | 使うもの |
|---|---|
| 既存のユーザーを更新する | wp_update_user() |
| 作る(更新もできる) | wp_insert_user() |
| メタ情報を更新する | update_user_meta() |
関連項目
wp_insert_user()、wp_delete_user()
公式リファレンス:wp_update_user() | Function | WordPress Developer Resources

コメント