bbp_set_user_role( int $user_id,  $new_role = '' )

Return a user’s main role

Description

Parameters

$user_id

(Required)

Return

(string)

Source

File: bp-forums/users/capabilities.php

56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
function bbp_set_user_role( $user_id = 0, $new_role = '' ) {
 
    // Validate user id
    $user_id = bbp_get_user_id( $user_id, false, false );
    $user    = get_userdata( $user_id );
 
    // User exists
    if ( !empty( $user ) ) {
 
        // Get users forum role
        $role = bbp_get_user_role( $user_id );
 
        // User already has this role so no new role is set
        if ( $new_role === $role ) {
            $new_role = false;
 
        // Users role is different than the new role
        } else {
 
            // Remove the old role
            if ( ! empty( $role ) ) {
                $user->remove_role( $role );
            }
 
            // Add the new role
            if ( !empty( $new_role ) ) {
 
                // Make sure Forums roles are added
                bbp_add_forums_roles();
 
                $user->add_role( $new_role );
            }
        }
 
    // User does don exist so return false
    } else {
        $new_role = false;
    }
 
    return apply_filters( 'bbp_set_user_role', $new_role, $user_id, $user );
}

Changelog

Changelog
Version Description
bbPress (r3860) Introduced.

Questions?

We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.