こんにちは、WPホームページ研究所の運営サポートチーム(@WP_LABO)です。
会員サイトを運営しているとユーザーがログインしている場合だけ表示したい場面がありますよね。またはユーザーに会員レベルを設けている場合は「もしログイン中のユーザーがAプランを契約しているなら」といった条件分岐を書きたいシチュエーションもあるはずです。ログイン中の情報取得を解説させていただきます。
ワードプレスでログイン中のユーザー情報を取得する
ユーザー情報は「wp_get_current_user」で取得できます。
$user_data = wp_get_current_user();
各ユーザーに振り分けられているID番号は「ID」です。そしてユーザー名が「user_login」。IDやユーザー名は被らないユニークな文字列なので条件分岐に使えますよね。下記が使用した例ですね。
$user_data = wp_get_current_user();
echo $user_data->ID;
echo $user_data->user_login;
あとワードプレスではユーザーのメタ情報が別で管理されています。テーブル名で言えば「wp_users」にメインのユーザー情報が格納されていて「wp_usermeta」に関連情報が入っている仕組みです。
$user_data = wp_get_current_user();
$user_idnm = $user_data->ID;
$user_meta = get_user_meta($user_idnm);
あとは状況に応じて取得すればOK。
$user_data = wp_get_current_user();
$user_idnm = $user_data->ID;
$user_meta = get_user_meta($user_idnm);
// 中身を確認する
var_dump($user_meta);
echo $user_meta['wp_user_level'][0];
もし会員サイトであればレベルが「wp_usermeta」に格納されているのでIDから連携して取得するだけですね。
まとめ
本日は「ログイン中のユーザー情報を取得する方法」を解説させていただきました。
もし会員サイトを運営する場合はログインしているユーザーや申し込んでいるプラン(会員レベル)によって処理を変える場面がありますよね。ユーザー情報を取得しておけば条件分岐を組むのもカンタンです。
ぜひご参考くださいませ。
▼ワードプレスでログインしたユーザーのみ表示させる条件分岐とは?
https://wp-labo.com/wordpress-is-user-logged-in/
最新式の無料プラグインを事前公開
WordPressは公式サイトに登録済みのプラグインだけで全機能を補足しきれません。当サイトでは使いやすさを追求した魅惑的なプラグインを無料でダウンロードいただけます。運営ホームページのマーケティング力をさらに高めるチャンスです。まずは無料でDLしてお試しくださいませ。
→ 改良されたプラグインを確認する