2014-01-09 6 views
1

Я хотел бы проверить статус пользователя и соответственно обновить свою роль форума bbPress. (Не роль Wordpress.)Wordpress - изменить роль форума извне bbPress, проверив статус пользователя

Цель состоит в том, чтобы добавить функциональность плагина BP-Registration-Options, который модерирует регистрацию пользователя (в BuddyPress. В настоящее время плагин устанавливает статус пользователя 69, пока пользователь не был одобрен, и блокирует доступ к функциональности BuddyPress, но пользователь все еще может войти в систему.

Когда они вступают в систему, bbPress автоматически устанавливает роль форума пользователя в соответствии с вашими настройками на заднем конце. В этом случае он установлен на «зритель» «Когда пользователь одобрен администратором, их статус изменен, и я хочу, чтобы он также обновил роль 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

EDIT: Немного дополнительной информации. Meta_key для ролей форума: wp_capabilities. Meta_value пользователя с ролью участника форума; является: a:2:{s:10:"subscriber";b:1;s:13:"bbp_spectator";b:1;}

ответ

2

Если бы то же самое требование - обновить поле wp_capabilities -

$wp_user_capabilities_arr = array( "subscriber" => true, "bbp_participant" => true ); update_user_meta($wp_user_id, "wp_capabilities", $wp_user_capabilities_arr);

А после обновления данных выглядит следующим образом:

а: 2: {х: 10: "абонент "; b: 1; s: 15:" bbp_participant "; b: 1;}

 Смежные вопросы

  • Нет связанных вопросов^_^