bbp_unstick_topic( int $topic_id )
Unsticks a topic both from front and it’s forum
Description
Parameters
- $topic_id
-
(int) (Optional) Topic id
Return
(bool) Always true.
Source
File: bp-forums/topics/functions.php
function bbp_unstick_topic( $topic_id = 0 ) { $topic_id = bbp_get_topic_id( $topic_id ); $super = bbp_is_topic_super_sticky( $topic_id ); $forum_id = empty( $super ) ? bbp_get_topic_forum_id( $topic_id ) : 0; $stickies = bbp_get_stickies( $forum_id ); $offset = array_search( $topic_id, $stickies ); do_action( 'bbp_unstick_topic', $topic_id ); if ( empty( $stickies ) ) { $success = true; } elseif ( !in_array( $topic_id, $stickies ) ) { $success = true; } elseif ( false === $offset ) { $success = true; } else { array_splice( $stickies, $offset, 1 ); if ( empty( $stickies ) ) { $success = !empty( $super ) ? delete_option( '_bbp_super_sticky_topics' ) : delete_post_meta( $forum_id, '_bbp_sticky_topics' ); } else { $success = !empty( $super ) ? update_option( '_bbp_super_sticky_topics', $stickies ) : update_post_meta( $forum_id, '_bbp_sticky_topics', $stickies ); } } do_action( 'bbp_unsticked_topic', $topic_id, $success ); return (bool) $success; }
Changelog
Version | Description |
---|---|
bbPress (r2754) | 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.