[WP]WordPressでログイン中のユーザー情報を安全に取得する方法

WordPress
スポンサーリンク

WordPressのカスタマイズやオリジナルテーマ開発において、現在ログインしているユーザーの情報を取得したい場面は頻繁に発生するんじゃないでしょうか。

例えば、「ようこそ、〇〇さん!」と表示したり、ユーザー権限によって表示するメニューを切り替えたり、パーソナライズされた体験を提供するために必須の機能と言えます。

しかし、もしあなたのWordPressサイトで古い情報に基づいたコード、具体的には get_currentuserinfo() 関数を使っていたら、それは危険信号です!

本記事では、WordPressのコア開発で推奨されている最新かつ安全なユーザー情報取得の方法を、Webデザイナーの皆さんがすぐに使えるコードとともにお届けします。


問題放置コスト:get_currentuserinfo() を使い続ける致命的なリスク

古い記事などで紹介されている get_currentuserinfo() 関数は、実はWordPressのコアからとっくに消滅しています。

バージョン ステータス
WordPress 3.1 非推奨 (Deprecated)
WordPress 4.5 完全に削除 (Removed)

この廃止された関数を現在のWordPress環境(2025年時点)で使用し続けると、どのような問題が発生するのでしょうか?

①致命的なエラーの発生 (Fatal Error):

関数自体が存在しないため、コードが実行されると「Call to undefined function get_currentuserinfo()」のような深刻なエラーとなり、ウェブサイト全体が真っ白になる可能性があります。

これはユーザー体験を著しく損なうでしょう。

②将来的な互換性の問題 (Compatibility Issue):

たとえ何らかの理由で現時点では動いても、今後のWordPressコアや他のプラグインのアップデートにより、予期せぬ挙動やセキュリティホールが生まれるリスクが非常に高いです。

古い情報に頼らず、現在のスタンダードである正しいコードへ速やかに移行することが、プロのWebデザイナーとしてのサイトの信頼性を担保します。

2025年推奨!ログインユーザー情報を取得する正しい関数

get_currentuserinfo()の代替として、現在最も推奨され、広く利用されている関数は wp_get_current_user() です。

この関数は、現在ログインしているユーザーの情報を WP_User オブジェクトとして取得します。このオブジェクトは、ユーザー名、メールアドレス、ユーザーID、権限レベルなど、必要な情報をすべて内包しているのが特徴です。


wp_get_current_user()`を使った情報の取得方法

グローバル変数を使わず、セキュリティと可読性を高めるために、この関数を積極的に活用しましょう。具体的なコードは以下の通りです。


オブジェクトから取得できる便利なユーザー情報一覧

上記の例で示したプロパティ以外にも、WP_User オブジェクトには、プロフィール画面で設定できる豊富な情報が格納されています。

プロパティ名 取得できる情報 備考
$current_user->ID ユーザーを一意に識別するID 整数値
$current_user->user_login ログイン時に使うユーザー名
$current_user->user_email 登録されたメールアドレス
$current_user->display_name サイトで表示される名前 プロフィールで設定可能
$current_user->first_name 姓 (First Name) プロフィールで設定可能
$current_user->last_name 名 (Last Name) プロフィールで設定可能
$current_user->roles ユーザーに付与されている権限 配列で取得される

表示名 (display_name) やファーストネーム・ラストネームといった項目は、ユーザーがプロフィール画面で入力していない場合、空欄として表示されます。

また、コードの冒頭でif ( 0 != $current_user->ID ) のように条件分岐を記述することで、未ログインユーザーがアクセスした場合にエラーが出たり、意図しない情報が表示されたりするのを未然に防げるでしょう。

未ログイン状態では $current_user->ID は 0 になります。


【まとめ】安全なコードでサイトを構築しましょう!

今回は、WordPressでログインユーザーの情報を取得する関数について、古いコードの危険性と2025年現在の正しい実装方法を解説しました。

古い (廃止済) 最新 (推奨)
get_currentuserinfo() wp_get_current_user()

Webデザイナーとして、サイトの安定稼働とセキュリティは最優先事項です。古いコードを放置するのではなく、wp_get_current_user() 関数に置き換えて、より安全で最新のWordPress開発に取り組んでいきましょう。

コメント

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