ユーザーのステータスを確認し、それに応じて bbPress フォーラムの役割を更新したいと思います。(Wordpress の役割ではありません。)
目的は、ユーザー登録を管理する BP-Registration-Options プラグインに機能を追加することです (BuddyPress で。現在、プラグインは、ユーザーが承認されていない間、ユーザー ステータスを 69 に設定し、BuddyPress 機能へのアクセスをブロックします。ただし、ユーザーはまだログインできました。
ユーザーがログインすると、bbPress はバックエンドでの設定に従って、ユーザー フォーラムの役割を自動的に設定します。この場合、'spectator' に設定されます。ユーザーが管理者によって承認されると、ステータスが変更され、bbPress ロールも「参加者」に更新したいと考えています。
これが私の最初の試みです:
function bp_registration_options_additional() {
if ( is_user_logged_in() ) {
$user_ID = get_current_user_id();
$user = get_userdata( $user_ID );
if (69 !== $user->user_status ) {
// Here is where I need help.
//How to set the bbPress forum role to 'Participant'?
}
}
}
add_action( 'wp_loaded', 'bp_registration_options_additional' );
ありがとう!
WP: 3.8 bbPress: バージョン 2.5.2
編集:少し追加情報。フォーラムの役割の meta_key は wp_capabilities です。フォーラム ロール「スペクテイター」を持つユーザーのメタ値。は:a:2:{s:10:"subscriber";b:1;s:13:"bbp_spectator";b:1;}