bbp_profile_update_role( int $user_id )

Helper function hooked to ‘bbp_profile_update’ action to save or update user roles and capabilities.

Description

Parameters

$user_id

(Required)

Source

File: bp-forums/users/capabilities.php

187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
function bbp_profile_update_role( $user_id = 0 ) {
 
    // Bail if no user ID was passed
    if ( empty( $user_id ) )
        return;
 
    // Bail if no role
    if ( ! isset( $_POST['bbp-forums-role'] ) )
        return;
 
    // Fromus role we want the user to have
    $new_role    = sanitize_text_field( $_POST['bbp-forums-role'] );
    $forums_role = bbp_get_user_role( $user_id );
 
    // Bail if no role change
    if ( $new_role === $forums_role )
        return;
 
    // Bail if trying to set their own role
    if ( bbp_is_user_home_edit() )
        return;
     
    // Bail if current user cannot promote the passing user
    if ( ! current_user_can( 'promote_user', $user_id ) )
        return;
 
    // Set the new forums role
    bbp_set_user_role( $user_id, $new_role );
}

Changelog

Changelog
Version Description
bbPress (r4235) 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.