WordPress で ログインユーザーの判定方法

こんにちは、阿久梨絵です!
WordPress サイトでは、ログインユーザーのみ特定のコンテンツを表示 したり、未ログインユーザー向けに別の情報を提供 することが可能です。

このような表示制御を行うには、条件分岐(if文)を活用 し、WordPressの関数 is_user_logged_in() を使うことで簡単に実装できます!

この記事では、条件分岐の基本・活用例・カスタマイズ方法 を詳しく解説します。

1. is_user_logged_in() とは?

is_user_logged_in() は、現在のユーザーがログインしているかどうかを判定する関数 です。
この関数は、ログインしている場合は trueログインしていない場合は false を返す ため、if文を使って表示制御を行うことができます。

ログイン状態を判定 → ユーザーがログインしているかどうかをチェック
コンテンツの表示制御 → ログインユーザー向けの情報を表示
会員制サイトの構築 → 未ログインユーザーには別の案内を表示

この関数を活用すると、WordPressサイトの柔軟なカスタマイズが可能になります!

2. is_user_logged_in() を使った基本的な条件分岐

① ログインユーザーのみ表示

以下のコードを header.php や sidebar.php に追加すると、ログインユーザーのみ特定のコンテンツを表示 できます。

<?php if ( is_user_logged_in() ) : ?>
<p>ようこそ、ログインユーザー様!</p>
<?php endif; ?>

このコードを追加すると、ログインしているユーザーにのみメッセージが表示されます!

② 未ログインユーザー向けの表示

未ログインユーザーに別のメッセージを表示する場合は、!is_user_logged_in() を使って条件分岐を行います。

<?php if ( ! is_user_logged_in() ) : ?>
<p>ログインすると、限定コンテンツを閲覧できます!</p>
<?php endif; ?>

このコードを追加すると、未ログインユーザーにログインを促すメッセージが表示されます!

③ ログイン状態で表示を切り替える

ログインしている場合と、していない場合で異なるコンテンツを表示 することも可能です。

<?php if ( is_user_logged_in() ) : ?>
<p>ログインユーザー向けの特別コンテンツ</p>
<?php else : ?>
<p>ログインすると、限定コンテンツを閲覧できます!</p>
<?php endif; ?>

このコードを追加すると、ログイン状態に応じて異なるメッセージが表示されます!

3. ショートコードを使った条件分岐

ショートコードを作成すると、投稿や固定ページ内で条件分岐を適用 できます。
以下のコードを functions.php に追加すると、
ログインユーザーのみコンテンツを表示するショートコード を作成できます。

function if_login_shortcode( $atts, $content = null ) {
if ( is_user_logged_in() ) {
return ‘<div class=”login-content”>’ . $content . ‘</div>’;
} else {
return ‘<p>ログインすると、限定コンテンツを閲覧できます!</p>’;
}
}
add_shortcode(‘if-login’, ‘if_login_shortcode’);

記事内で [if-login]ログインユーザー向けのコンテンツ[/if-login] と入力すると、ログイン状態に応じて表示が切り替わります!

4. is_user_logged_in() の活用例

会員制サイトの構築 → ログインユーザーのみ特定のページを閲覧可能に
限定コンテンツの表示 → 未ログインユーザーには別の案内を表示
ナビゲーションのカスタマイズ → ログイン状態に応じてメニューを変更
ショートコードを活用 → 記事内で条件分岐を適用

この関数を活用すると、WordPressサイトの柔軟なカスタマイズが可能になります!

まとめ

is_user_logged_in() を使うと、ログイン状態に応じた表示制御が可能!
if文を活用すれば、ログインユーザー向けのコンテンツを簡単に設定できる
ショートコードを作成すると、投稿や固定ページ内でも条件分岐を適用可能
会員制サイト・限定コンテンツ・ナビゲーションカスタマイズなど、幅広い用途に活用!

WordPressサイトを運営するなら、条件分岐を活用した表示制御は必須のカスタマイズ です!
ぜひ、適切な方法で is_user_logged_in() を活用し、サイトの利便性を向上させましょう。
阿久梨絵でした!

Verified by MonsterInsights