get_userdata() の使い方|説明・引数・注意点

説明

get_userdata() は、ユーザーIDから、ユーザー情報のオブジェクトを取得する関数です。

基本構文

get_userdata( int $user_id ): WP_User|false

引数

  • $user_id:ユーザーID

戻り値

WP_User。存在しなければ false。

使い方(サンプル)

$u = get_userdata( 1 );
if ( $u ) {
	var_dump( $u->user_login );
}

注意点

  • 存在しないユーザーでは false が返ります。

実務での使いどころ

  • ユーザーのIDから、ユーザーの情報(オブジェクト)を取得するとき。
  • 投稿者のIDから、表示名やメールアドレスを取得するとき。

よくあるミスと対処

  • 存在しないIDでは false が返る。確認せずにプロパティへアクセスする。
  • メールアドレスなどの個人情報を、そのまま画面に出す。公開してよい項目だけを出す。
  • IDではなく、ログイン名やメールアドレスで探したいのに、これを使っている。それらは get_user_by()。

NG例

$user = get_userdata( $id );
echo $user->user_email; // 存在しないIDだと、エラーになる。メールが公開される

OK例

$user = get_userdata( $id );
if ( $user ) {
	echo esc_html( $user->display_name );
}

使い分け早見表

やりたいこと 使うもの
IDから取得 get_userdata()
ログイン名・メールなどから取得 get_user_by()
条件に合うユーザーを一覧取得 get_users()

関連項目

get_user_by()、wp_get_current_user()

公式リファレンス:get_userdata() | Function | WordPress Developer Resources

コメント

タイトルとURLをコピーしました