#2550 closed enhancement (worksforme)
Function 'bbp_list_forums' does not allow for easy filtering
Reported by: | Robin W | Owned by: | |
---|---|---|---|
Milestone: | Priority: | normal | |
Severity: | normal | Version: | 2.5.2 |
Component: | General | Keywords: | |
Cc: |
Description
'bbp_list_forums' in /includes/forums/template starts on line 744
This function uses $r array to create a list of sub forums, which are held in $output.
The issue is that the "apply filters" is only done after $r array has been used to create $output,
so no change to $r in the filter can be used, and any filter to change the output display has to use almost all of this function.
Suggested improvement/fix :
adding a new line 766
$r = apply_filters('bbp_list_forums_args,$r)
would allow easy short filters against this array
eg
function hide_forum_counts ($r) { $r['show_topic_count'] = false ; $r['show_reply_count'] = false ; $r['separator'] = ' '; return $r ; } add_filter('bbp_list_forums_args','hide_forum_counts') ;
and make for neater non-repeated code
Change History (2)
Note: See
TracTickets for help on using
tickets.
Robin,
There is a magical function called
bbp_parse_args
(Source: /includes/common/functions.php#L1312)If you see
bbp_parse_args
in a function you'll be able to filter all the things pretty easily.Using your listed example above:
Example 1: (Source: https://gist.github.com/ntwb/3797945)
To reverse the displayed sort order of topics (i.e use ASC instead of DESC):
Another example for breadcrumbs via your post on bbpress.org: