wp_set_current_user()


WordPress関数wp_set_current_user()は、現在のユーザーを設定するために使用される重要な関数です。この関数を使用して、特定のユーザーをシステム内で「現在のユーザー」として扱うことができます。

構文

wp_set_current_user( int $user_id, string $user_login = '' );

引数の説明:

  • $user_id (int) — ユーザーID。設定したいユーザーのID。
  • $user_login (string) — (省略可能) ユーザー名。

例 1: ユーザーを設定する

以下のコードは、指定されたユーザーIDのユーザーを現在のユーザーとして設定します。

<?php wp_set_current_user( get_current_user_id() ); ?>

例 2: ユーザーIDとログイン名を指定

ユーザーIDとログイン名を指定して現在のユーザーを設定します。

<?php wp_set_current_user( 1, 'admin' ); ?>

例 3: ユーザーの権限を確認する

以下のコードは、特定の権限を持つ現在のユーザーを設定し、その権限を確認します。

<?php
wp_set_current_user( 2 );
if ( current_user_can( 'manage_options' ) ) {
    echo 'このユーザーは管理者です。';
}
?>

例 4: ログインしているか確認

現在のユーザーを設定した後に、ログイン状態を確認します。

<?php
wp_set_current_user( 5 );
if ( is_user_logged_in() ) {
    echo 'ユーザーはログインしています。';
}
?>

例 5: 条件に応じた表示

ユーザーIDによって異なるメッセージを表示します。

<?php
wp_set_current_user( get_current_user_id() );
if ( get_current_user_id() === 1 ) {
    echo 'ようこそ、管理者!';
} else {
    echo '一般ユーザーです。';
}
?>

注意事項

  • wp_set_current_user()は、現在のリクエスト中にのみ有効です。
  • この関数を使用する場合、セキュリティに注意してください。不正なIDや名前を設定しないようにしましょう。

関連機能: