Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function xx_list_forums( $args = '' ) {
- // Define used variables
- $output = $sub_forums = $topic_count = $reply_count = $counts = '';
- $i = 0;
- $count = array();
- // Parse arguments against default values
- $r = bbp_parse_args( $args, array(
- 'before' => '<ul class="bbp-forums-list">',
- 'after' => '</ul>',
- 'link_before' => '<li class="bbp-forum">',
- 'link_after' => '</li>',
- 'count_before' => ' (',
- 'count_after' => ')',
- 'count_sep' => ', ',
- 'separator' => ', ',
- 'forum_id' => '',
- 'show_topic_count' => true,
- 'show_reply_count' => true,
- ), 'list_forums' );
- // Loop through forums and create a list
- $sub_forums = bbp_forum_get_subforums( $r['forum_id'] );
- if ( !empty( $sub_forums ) ) {
- // Total count (for separator)
- $total_subs = count( $sub_forums );
- foreach ( $sub_forums as $sub_forum ) {
- $i++; // Separator count
- // Get forum details
- $count = array();
- $show_sep = $total_subs > $i ? $r['separator'] : '';
- $permalink = bbp_get_forum_permalink( $sub_forum->ID );
- $title = bbp_get_forum_title( $sub_forum->ID );
- $content = bbp_get_forum_content($sub_forum->ID) ;
- // Show topic count
- if ( !empty( $r['show_topic_count'] ) && !bbp_is_forum_category( $sub_forum->ID ) ) {
- $count['topic'] = bbp_get_forum_topic_count( $sub_forum->ID );
- }
- // Show reply count
- if ( !empty( $r['show_reply_count'] ) && !bbp_is_forum_category( $sub_forum->ID ) ) {
- $count['reply'] = bbp_get_forum_reply_count( $sub_forum->ID );
- }
- // Counts to show
- if ( !empty( $count ) ) {
- $counts = $r['count_before'] . implode( $r['count_sep'], $count ) . $r['count_after'];
- }
- // Build this sub forums link
- $output .= $r['link_before'] . '<a href="' . esc_url( $permalink ) . '" class="bbp-forum-link">' .
- $title . $counts . '</a>' .
- $show_sep . $r['link_after'] .
- '<div class="bbp-forum-content">'.$content.'</div>';
- }
- // Output the list
- echo $r['before'] . $output . $r['after'];
- }
- }
- add_filter( 'bbp_list_forums', 'xx_list_forums' );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement