wp_insert_user

説明

mixed wp_insert_user( mixed $userdata )
ユーザーを登録する。

パラメータ

  • $userdata
    ユーザ情報を格納した連想配列またはオブジェクトを指定。指定できるユーザ情報の内容は次の通り。
    プロパティ意味格納先省略時の値
    'ID'ユーザIDwp_users省略可
    'user_login'ログイン名wp_users省略不可
    'user_pass'パスワードwp_users省略不可
    'user_email'メールアドレスwp_users省略時は''
    'user_url'URLwp_users省略時は''
    'user_nicename'URLに含められる名前wp_users省略時は'user_login'の値
    'display_name'表示名wp_users省略時は名前に関連する値から
    'user_registered'登録日時(書式は'Y-m-d H:i:s')wp_users現在のGMT日時
    'nickname'ニックネームwp_usermeta省略時は'user_login'の値
    'first_name'ファーストネームwp_usermeta省略時は''
    'last_name'ラストネームwp_usermeta省略時は''
    'description'説明wp_usermeta省略時は''
    'rich_editing'リッチエディタ使用wp_usermeta省略時は'true'
    'comment_shortcuts'コメントショートカットwp_usermeta省略時は'false'
    'admin_color'管理画面カラーwp_usermeta省略時は'fresh'
    'use_ssl'SSL使用wp_usermeta省略時は0
    'show_admin_bar_front'管理バー表示wp_usermeta省略時は'true'
    'role'ロールwp_usermeta省略時は get_option( 'default_role' )の値(登録時のみ)
    'locale'ロケールwp_usermeta省略時は''
    'jabber'Jabberアカウントwp_usermeta
    'aim'AOL IMアカウントwp_usermeta
    'yim'Yahoo IMアカウントwp_usermeta

※[3.6.0]'jabber'、'aim'、'yim'を削除。


返り値

ユーザ情報を登録・更新できた場合はそのユーザIDを返す。登録・更新できなかった場合は、そのエラー内容を格納した WP_Errorオブジェクトを返す。

注意

パラメータ$userdataが'ID'プロパティを持つ場合は、そのユーザIDの示すユーザ情報を更新する。'ID'プロパティを持たない場合は、新規に登録する。

ユーザ情報の新規登録時、キー'user_pass'の内容はプレーンテキストを指定する。

ユーザ情報の更新時にパスワードを変更する場合、キー'user_pass'の内容はプレーンテキストではなく、 wp_hash_password関数で生成したハッシュを指定する。


使用例

  • ユーザを登録する。
    <?php wp_insert_user( $userdata ); ?>

フィルター

登録・更新前に'pre_user_login'フィルターを呼び出す。
$user_login = apply_filters( 'pre_user_login', $user_login );
登録・更新前に'pre_user_nicename'フィルターを呼び出す。
$user_nicename = apply_filters( 'pre_user_nicename', $user_nicename );
登録・更新前に'pre_user_url'フィルターを呼び出す。
$user_url = apply_filters( 'pre_user_url', $user_url );
登録・更新前に'pre_user_email'フィルターを呼び出す。
$user_email = apply_filters( 'pre_user_email', $user_email );
登録・更新前に'pre_user_nickname'フィルターを呼び出す。
$nickname = apply_filters( 'pre_user_nickname', $nickname );
登録・更新前に'pre_user_first_name'フィルターを呼び出す。
$first_name = apply_filters( 'pre_user_first_name', $first_name );
登録・更新前に'pre_user_last_name'フィルターを呼び出す。
$last_name = apply_filters( 'pre_user_last_name', $last_name );
登録・更新前に'pre_user_display_name'フィルターを呼び出す。
$display_name = apply_filters( 'pre_user_display_name', $display_name );
登録・更新前に'pre_user_description'フィルターを呼び出す。
$description = apply_filters( 'pre_user_description', $description );
[4.9.0]ユーザ情報の追加または更新を行う前に'wp_pre_insert_user_data'フィルターを呼び出す。パラメータ$dataにはユーザ情報の連想配列が、$updateには更新時はtrue、追加時にはfalseが、$idは更新時ならユーザID、追加時はnullが格納されている。
$data = apply_filters( 'wp_pre_insert_user_data', $data, $update, $id );
[4.4.0]ユーザのメタ情報(ニックネームなど)を更新する前に'insert_user_meta'フィルターを呼び出す。パラメータ$dataにはメタ情報の連想配列が、$userにはユーザ情報(オブジェクト)が、$updateには更新時はtrue、追加時にはfalseが格納されている。
$meta = apply_filters( 'insert_user_meta', $meta, $user, $update );

アクション

ユーザ情報を更新した後に'profile_update'アクションを呼び出す。$user_idには更新したユーザIDが、$old_user_dataには更新前のユーザ情報が格納される。
do_action( 'profile_update', $user_id, $old_user_data );
ユーザ情報を渡鹿した後に'user_register'アクションを呼び出す。$user_idには登録したユーザIDが格納される。
do_action( 'user_register', $user_id );

ソースファイル

/wp-includes/user.php

最終更新 : 2019年05月29日 15:35



お勧め

投稿ページでユニークなテンプレートを選択しよう(2018年5月27日 更新)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

ブロックエディターの色設定を変えてみる(2019年12月11日 更新)

バージョン5.3で機能強化されたブロックエディター。対応を考えて新テーマ「Twenty Twenty」のソースコードを眺めていく。

5.3の新機能:日付とタイムゾーン(2019年10月2日 更新)

WordPress 5.3 Beta 1」に記載されていた「Time/Date component fixes」という見出し。開発者向として新しい関数の追加や多くのバグが修正されたとなっており、チェックせざるを得ない。

ショートコードを含んだページを表示する前に何か処理する(2014年5月28日 更新)

固定ページまたは投稿ページに独自のフォームを埋め込む。入力→登録の2段階のフォームなら著名なプラグイン「Contact Form 7」を利用すればいいのだが、クライアントの依頼は入力→確認→登録の3段階で組み込む要素が特化していたので、独自の実装方法を考えることになった。

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。