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



お勧め

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

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

Twenty Seventeenのフォントサイズを変更してみた(2021年12月15日 更新)

先日投稿した「続テーマを変更せずにWebフォントを使ってみた」では、テーマ「Twenty Seventeen」でもWebフォントを使えるようにした。その際、「Twenty Seventeen」のフォントサイズが少し小さく感じたので、今回はフォントサイズを調整してみた。

HTML entities button:プラグイン作ってみました(2021年4月28日 更新)

以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。

5.7の機能拡張:エクスポートファイルに更新日時が追加ほか(2021年2月23日 更新)

WordPressはサイト移行を支援する機能として投稿情報のエクスポート機能を備えている。5.7ではこのエクスポート機能が改良され、更新日時情報が追加されるようだ。

query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 更新)

先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。