[WordPress]現在のユーザーの役割(会員ランク)をチェックする

Last Updated: 2023 年 07 月 16 日 댓글

WordPressで特定の機能を管理者の評価や編集者(editor)等級以上だけを実行するように制限する必要があります。 この場合、current_user_can関数を使用して、現在のユーザーの評価に基づいて制限することができます。

現在のユーザーのユーザーロール(会員ランク)チェック

if( current_user_can( 'administrator' ) ){
} // 관리자(Administrator)인 경우에만

if( current_user_can( 'editor' ) ){
} // 에디터(Editor)인 경우에만

if( current_user_can( 'author' ) ){
} // 글 작성자(Author)인 경우에만

if( current_user_can( 'contributor' ) ){
} // 기여자(Contributor)인 경우에만

if( current_user_can( 'subscriber' ) ){
} // 구독자(Subscriber)인 경우에만

つまり、現在のユーザーが管理者であるチェックして、特定のタスクを実行するには、

if( current_user_can( 'administrator' ) ){
// 수행할 작업
}

形式を使用できます。 「管理者または編集者」の場合は、OR演算子を追加するだけです。

if( current_user_can( 'administrator' ) || current_user_can( 'editor' ) ){
// 수행할 작업
}

ここで使用されたcurrent_user_can()関数は、上記のように、ユーザーの役割だけでなく、特定の権限を使用してチェックすることもできます。 この関数の詳細については、 WordPress Codexページを参照してください。

したがって、現在のユーザーが管理者であるかどうかをチェックする場合は、上記で使用した if( current_user_can( 'administrator' ) ) の代わりに次のコードを使用することもできます。

if (current_user_can( 'manage_options' )) {
// 수행할 작업
}

参考までに is_admin()は、現在のダッシュボード(伝言板)にあるかどうかをチェックする関数です。

if ( ! is_admin() ) {
     echo "현재 테마를 보고 있습니다";
} else {
     echo "현재 WordPress 관리 패널을 보고 있습니다";
}

現在のユーザーがログインユーザーであることをチェック

現在のユーザーがログインのかゲストかどうかをチェックしたい場合には、 is_user_logged_in()関数を使用します。 例えば、

if ( is_user_logged_in() ) {
	echo '안녕하세요? 회원님'; // 현재 ユーザー가 로그인한 경우
} else {
	echo '안녕하세요? 게스트님'; // 현재 ユーザー가 게스트인 경우
}

現在のユーザーがゲストかどうかだけをチェックするにはどうすればいいですか? 例えば、NOT演算子を追加します。

if (!is_user_logged_in()) {
// 수행할 작업
} //현재 ユーザー가 로그인 ユーザー가 아닌 경우(즉, 게스트인 경우)

WordPress テーマソースを修正してみると、上記のようなコードを使用している場合が多いでしょう。 各関数の詳細については、各関数にリンクされた WordPress Codexページを参考にして、アプリケーションしてください。

参照


コメントを残す

コメント