WordPress ユーザー権限別の条件分岐の設定方法
最終更新日 - 公開日 2020.10.29
by
WordPress のユーザー権限別の条件分岐の設定方法を紹介します。
例えば、本番環境でのテストアップを、指定したユーザー限定にしたいときに便利な方法です。
- ユーザー権限のおさらい
- 管理者だけに表示する方法
- 編集者だけに表示する方法
- 投稿者だけに表示する方法
- 寄稿者だけに表示する方法
- 購読者だけに表示する方法
- 複数の権限を指定する方法
- ログイン中に表示する方法
ユーザー権限のおさらい
まずはユーザー権限のおさらい。分岐処理に必要な権限のスラッグを確認してください。
- 管理者
slug : administrator - シングルサイト内のすべての管理機能にアクセスできるユーザー
- 編集者
slug : editor - 他のユーザーの投稿を含むすべての投稿を発行、管理できるユーザー
- 投稿者
slug : author - 自身の投稿を発行、管理できるユーザー
- 寄稿者
slug : contributor - 自身の投稿を編集、管理できるが、発行はできないユーザー
- 購読者
slug : subscriber - プロフィール管理のみを実行できるユーザー
管理者だけに表示する方法
ユーザー権限が「管理者(administrator)」の場合、current_user_can() の値に administrator を追加すると、管理者を対象とした分岐処理を行えます。
<?php if(current_user_can('administrator')): ?>
管理者の場合に表示
<?php endif; ?>
編集者だけに表示する方法
ユーザー権限が「編集者(editor)」の場合、current_user_can() の値に editor を追加すると、編集者を対象とした分岐処理を行えます。
<?php if(current_user_can('editor')): ?>
編集者の場合に表示
<?php endif; ?>
投稿者だけに表示する方法
ユーザー権限が「投稿者(author)」の場合、current_user_can() の値に author を追加すると、投稿者を対象とした分岐処理を行えます。
<?php if(current_user_can('author')): ?>
投稿者の場合に表示
<?php endif; ?>
寄稿者だけに表示する方法
ユーザー権限が「寄稿者(contributor)」の場合、current_user_can() の値に contributor を追加すると、寄稿者を対象とした分岐処理を行えます。
<?php if(current_user_can('contributor')): ?>
寄稿者の場合に表示
<?php endif; ?>
購読者だけに表示する方法
ユーザー権限が「購読者(subscriber)」の場合、current_user_can() の値に subscriber を追加すると、購読者を対象とした分岐処理を行えます。
<?php if(current_user_can('subscriber')): ?>
購読者の場合に表示
<?php endif; ?>
複数の権限を指定する方法
複数の権限を指定する場合は || を利用します。以下は、「管理者」と「編集者」のみを指定した例です。
<?php if(current_user_can('administrator') || current_user_can('editor')):?>
管理者と編集者の場合に表示
<?php endif; ?>
ログイン中に表示する方法
ユーザー権限関係なく、ログイン中のユーザーのみに表示する場合は is_user_logged_in
を使用します。
<?php if(is_user_logged_in()): ?>
ログイン中に表示
<?php endif; ?>
まとめ
WordPress ユーザー権限別に分岐処理を行う方法を紹介しま