bbp_privatize_forum( int $forum_id, $current_visibility = '' )
Mark the forum as private
Description
Parameters
- $forum_id
-
(Optional) Forum id
Return
(bool) False on failure, true on success
Source
File: bp-forums/forums/functions.php
function bbp_privatize_forum( $forum_id = 0, $current_visibility = '' ) { $forum_id = bbp_get_forum_id( $forum_id ); do_action( 'bbp_privatize_forum', $forum_id ); // Only run queries if visibility is changing if ( bbp_get_private_status_id() !== $current_visibility ) { // Get hidden forums $hidden = bbp_get_hidden_forum_ids(); // Find this forum in the array if ( in_array( $forum_id, $hidden ) ) { $offset = array_search( $forum_id, $hidden ); // Splice around it array_splice( $hidden, $offset, 1 ); // Update hidden forums minus this one update_option( '_bbp_hidden_forums', array_unique( array_filter( array_values( $hidden ) ) ) ); } // Add to '_bbp_private_forums' site option $private = bbp_get_private_forum_ids(); $private[] = $forum_id; update_option( '_bbp_private_forums', array_unique( array_filter( array_values( $private ) ) ) ); // Update forums visibility setting global $wpdb; $wpdb->update( $wpdb->posts, array( 'post_status' => bbp_get_private_status_id() ), array( 'ID' => $forum_id ) ); wp_transition_post_status( bbp_get_private_status_id(), $current_visibility, get_post( $forum_id ) ); bbp_clean_post_cache( $forum_id ); } do_action( 'bbp_privatized_forum', $forum_id ); return $forum_id; }
Changelog
Version | Description |
---|---|
bbPress (r2746) | 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.