運用されているwordpressで構築されたサイトに、直接更新作業や改修作業を依頼されることも少なくないかと思います。公開する前にクライアントから一度確認したいという場合もあるので、投稿以外の箇所の場合には、非公開にすることもできなく困ったことはありませんか。
今回はそのような直接テンプレートを編集するような更新や簡易的な改修に使える、ログインしているユーザーのみ表示される条件分岐を紹介していきたいと思います。
ログインユーザーのみ表示される条件分岐
まずはログインしているユーザーのみに表示したい場合は下記コードとなります。
<?php if( is_user_logged_in() ) : ?>
ここに記述した内容はログインユーザーのみに表示されます。
<?php endif; ?>
バナーや記事一覧のなどの簡易的なwordpress改修に、一時的に一般ユーザーに見えなくするために活用できます。
特にお客様の中には、すぐに返答が来ない場合もあるのでこの方法だと手軽に使え便利です。
ユーザーの権限で判別して実行される条件分岐
次にwordpressアカウントのユーザー権限で判別して処理を変える条件分岐は下記コードとなります。
■管理者アカウントのみの場合
if (current_user_can('administrator')) {
管理者アカウントのみ実行される内容
}
■編集アカウントのみの場合
if (current_user_can('editor')) {
編集者アカウントのみ実行される内容
}
■管理者アカウント・編集者アカウント両方の場合
if (current_user_can('editor') || current_user_can('administrator')) {
管理者アカウント・編集者アカウントのみ実行される内容
}
ログインしているアカウントのユーザーの権限を判定して処理を分岐する方法です。
ちなみにデフォルトでは下記権限で分類されています。
権限名 | 権限(ロール) |
---|---|
管理者 | administrator |
編集者 | editor |
投稿者 | author |
寄稿者 | contributor |
購読者 | subscriber |
更新などにはまず使わないかなと思います。
どちらかと言うとカスタマイズで権限によって、提供する機能を分ける場合などに、使うと考えてください。
wordpressにログイン状態か判別する条件分岐まとめ
wordpressにログイン状態か判別する条件分岐について紹介してきました。
うまく活用すると制作業務の改善にも繋がるので、是非参考にしていただければと思います。