概要
wp_insert_user
アクションは、ユーザを登録する際にトリガーされるアクションフックです。このアクションは、ユーザーの情報がデータベースに挿入された後に実行されます。主にプラグインやテーマの開発で、登録後の処理(ユーザーの役割を追加したり、追加のメタデータを保存したり、メール送信をしたりする)に利用されます。
よく使われる機能としては以下のものがあります:
- ユーザの役割を変更する
- ユーザ登録後のメール通知を送信する
- ユーザメタデータを追加する
- ログを記録する
- 特定のアクションをトリガーする
- サードパーティAPIとの連携
- ユーザ関連のデータを初期化する
- アカウント作成時のボーナスや特典を設定する
構文
do_action('wp_insert_user', $user_id, $userdata);
パラメータ
$user_id
(int) – 新しく挿入されたユーザーのID$userdata
(array) – 挿入されたユーザーのデータ配列
戻り値
特に戻り値はありません。これはアクションフックのため、関数の実行結果には影響を与えません。
関連する関数
バージョン
wp_insert_user
アクションはWordPress 2.0.0以降で使用可能です。
コアファイルのパス
wp-includes/user.php
この関数のアクションでの使用可能性
アクション名 | 使用可能性 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル1: ユーザ登録時のメール通知
このサンプルコードは、新しくユーザが登録されると、登録したユーザにメール通知を送信します。
add_action('wp_insert_user', 'send_user_notification');
function send_user_notification($user_id) {
$user_info = get_userdata($user_id);
wp_mail($user_info->user_email, '登録完了', 'ご登録ありがとうございます!');
}
出典: https://wordpress.org/support/article/wp-insert-user/
サンプル2: ユーザ役割の変更
このサンプルコードでは、新しく登録されたユーザに特定の役割を追加します。
add_action('wp_insert_user', 'set_default_user_role');
function set_default_user_role($user_id) {
$user = new WP_User($user_id);
$user->set_role('subscriber');
}
出典: https://wordpress.org/support/article/wp-insert-user/
サンプル3: ユーザメタデータの追加
このコードは、ユーザ登録時に特定のメタデータを追加します。
add_action('wp_insert_user', 'add_custom_user_meta');
function add_custom_user_meta($user_id) {
add_user_meta($user_id, 'custom_meta_key', 'custom_meta_value');
}
出典: https://wordpress.org/support/article/wp-insert-user/
サンプル4: 認証ログの記録
新しいユーザが登録された時にログを記録するサンプルです。
add_action('wp_insert_user', 'log_user_registration');
function log_user_registration($user_id) {
error_log('User registered: ' . $user_id);
}
出典: https://wordpress.org/support/article/wp-insert-user/
サンプル5: サードパーティAPIの呼び出し
ユーザが登録されると、外部APIに通知を送信するサンプルです。
add_action('wp_insert_user', 'notify_external_api');
function notify_external_api($user_id) {
// API呼び出しの処理
}
出典: https://wordpress.org/support/article/wp-insert-user/