WordPress:ログイン中のユーザが管理ユーザかどうか確認

最終更新:2016-11-24 by Joe

ワードプレスのコード内で、現在ログイン中のユーザが管理レベルのユーザかどうかで分岐します。

ログインしているのが管理ユーザかどうか

<?php

if ( current_user_can('manage_options') ) {
 // 処理・・
}

?>

ちょっとあまり直感的ではないですが、引数には、ユーザの「権限名」渡します。Wordpressは、「役割(Role)」に対して、「権利(Capability)」を割り振る。というモデルでしたね。

詳しくはドキュメント見てください。

権限と役割:
https://codex.wordpress.org/Roles_and_Capabilities

一瞬間違えそうな is_admin() は「いま管理画面かどうか」を確認する関数ですので、ご注意ください。

is_admin()
https://wpdocs.osdn.jp/関数リファレンス/is_admin

最後に、忘れっぽい人(=わたし)のために、覚えやすい関数でラップしました。functions.phpなどにコピペして使ってください。

<?php
// Check if the current user is an admin user
function is_admin_user() {
  return current_user_can('manage_options');
}
?>