説明
get_user_by() は、ID・スラッグ・メール・ログイン名のいずれかでユーザーを検索する関数です。
基本構文
get_user_by( string $field, int|string $value ): WP_User|false
引数
$field:id/slug/email/login$value:検索する値
戻り値
WP_User。見つからなければ false。
使い方(サンプル)
$u = get_user_by( 'email', 'user@example.com' );
注意点
- 見つからないと
falseが返ります。
実務での使いどころ
- ログイン名やメールアドレスから、ユーザーを探すとき。
- スラッグ(
user_nicename)で、ユーザーを取得するとき。
よくあるミスと対処
- フィールド名を間違えている。指定できるのは、
id・ID・slug・email・login。 - 存在しないときは
falseが返る。確認せずにプロパティへアクセスする。
NG例
$user = get_user_by( 'user_email', $email ); // フィールド名が違う
OK例
$user = get_user_by( 'email', $email );
if ( $user ) {
echo esc_html( $user->display_name );
}
使い分け早見表
| やりたいこと | 使うもの |
|---|---|
| ID以外の項目から、1人を取得 | get_user_by() |
| IDから取得 | get_userdata() |
| 条件に合うユーザーを一覧取得 | get_users() |
関連項目
get_userdata()、username_exists()
公式リファレンス:get_user_by() | Function | WordPress Developer Resources

コメント