説明
user_register は、ユーザーが新規登録された直後に実行されるアクションです。
基本構文
do_action( 'user_register', int $user_id, array $userdata )
引数
$user_id:ユーザーID$userdata:登録されたユーザーデータ
戻り値
値は返しません。
使い方(サンプル)
add_action( 'user_register', function( $user_id ) {
update_user_meta( $user_id, 'welcome', 1 );
} );
注意点
- ユーザーメタの初期値の設定などに使います。
実務での使いどころ
- 新しいユーザーが、登録された直後に、追加の処理(独自のメタの保存、通知メール)を、行うとき。
よくあるミスと対処
- 管理画面で作成したユーザーでも、実行される。登録経路を、区別したいときは、別の方法で判定する。
- ロールを、勝手に変更している。権限の昇格につながる。
- ユーザーの入力を、検証・サニタイズせずに、メタとして保存している。
NG例
add_action( 'user_register', function ( $user_id ) {
update_user_meta( $user_id, 'phone', $_POST['phone'] ); // 検証・サニタイズがない
} );
OK例
add_action( 'user_register', function ( $user_id ) {
if ( isset( $_POST['phone'] ) ) {
update_user_meta( $user_id, 'phone', sanitize_text_field( wp_unslash( $_POST['phone'] ) ) );
}
} );
使い分け早見表
| フック | 実行されるタイミング |
|---|---|
user_register |
ユーザーが、登録された直後 |
wp_login |
ユーザーが、ログインした直後 |
wp_insert_user() |
ユーザーを、作成する関数 |

コメント