WordPressでログインしているユーザーの権限毎に条件分岐する方法

WordPressでログインしているユーザーの権限毎に条件分岐する方法

WordPressでログインしているユーザーの権限毎に条件分岐する方法

サイトを閲覧しているユーザーが、単純にログインしているかどうかを判別したいのであればis_user_logged_inを使えば良いですが、そこからさらに一歩踏み込んで、ユーザー権限毎に処理を変えたいこともあるかと思います。

そんな時のために、WordPressにログインしているユーザー権限によって、表示など処理を分岐させる方法をご紹介いたします。

WordPressでログインしているユーザーの権限毎に条件分岐する方法

テーマファイル内の分岐させたい箇所で以下のように記述します。

<?php 
global $current_user;
get_currentuserinfo();
if ($current_user->ID == '') { //未ログイン
  echo "あなたはログインしていません";
} else if ($current_user->user_level == 10) { //管理者(administrator)としてログイン
  echo "あなたは管理者です";
} else if ($current_user->user_level >= 7) { //編集者(editor)としてログイン
  echo "あなたは編集者です";
} else if ($current_user->user_level >= 4) { //投稿者(author)としてログイン
  echo "あなたは投稿者です";
} else if ($current_user->user_level >= 1) { //寄稿者(contributor)としてログイン
  echo "あなたは寄稿者です";
} else { //購読者(subscriber)としてログイン
  echo "あなたは購読者です";
}
?>

get_currentuserinfoでユーザーの権限を取得して分岐しています。

各権限毎の処理については、適宜変更してください。

あとがき

会員制のサイトとか複数ユーザーでサイトを管理している場合にご活用ください。参考になれば幸いです。

この記事が気に入ったら
いいね!してね♪

Twitter で

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です