Hello,
I just installed bbpress on a new website. I have given descriptions (or subtitles) to some of the forums. On the forum index, these descriptions show up in all uppercase (And when I check the code in Firefox Inspector I can see that there isn’t even any styling tag around the descriptions).
I can’t figure out what the problem is. What is causing this and how should I fix it? Thanks for the help.
Patrick
ah, I see what you ae getting at – not sure how this site does it, but you can create a link to a page in your site and put
[bbp-topic-index] in that page – that will show the latest 15 topics
If you want better than that, then
bbp style pack
once activated go to
dashboard>settings>bbp style pack>shortcode
and check out the
[bsp-display-topic-index] which has lots of settings you can use to control what is shown
dashboard>settings>bbp style pack>Custom CSS
If I understand
add_action ('bbp_theme_after_topic_form_tags' , 'rew_tag_desc' ) ;
add_action ('bbp_theme_after_reply_form_tags' , 'rew_tag_desc' ) ;
function rew_tag_desc () {
echo '<p>words here</p>' ;
}
Put this in your child theme’s function file –
ie wp-content/themes/%your-theme-name%/functions.php
where %your-theme-name% is the name of your theme
or use
Code Snippets
I just installed the Ultimate Member plugin. The frontend login shortcode that comes with that plugin works as expected, so not sure what this issue is with the bbPress Login Widget, but something is certainly not right.
I totally get that many people should be complaining if it were obviously broken, but especially after testing a clean WP core and bbPress install it seems that this isn’t likely to be an edge case.
Again, let me know if you have any specific questions that I can help with to debug.
Thanks!
just tried it on my website, and that code works fine.
3 possibilities
1. the 90 is wrong
2. the 90 forum does not have sub forums
3. some other code is filtering the bbp_forum_get_subforums function
If you are happy it is not 1 or 2, then it could be a theme or plugin issue
Themes
As a test switch to a default theme such as twentyfifteen, and see if this fixes.
Plugins
If that doesn’t work, also deactivate all plugins apart from bbpress and see if this fixes. if it does, re-enable one at a time to see which is causing the error.
If you cannot do this to your site (say because it is live) then use the ‘troubleshooting’ features of this plugin to let you test without affecting other users
Health Check & Troubleshooting
Then come back
I tried this but result is
array(0) { }
It’s still empty.
try
$sub_forums = bbp_forum_get_subforums(90);
var_dump($sub_forums);
I want to list the subforums under the category. My forum structure is like this:
Category A
– Subforum1
– Subforum2
– Subforum3
When parent category id is ’90’, I expected to get subforums of category 90.
$sub_forums[] = bbp_forum_get_subforums(90);
var_dump($sub_forums);
This returns empty array. Please let me know if my usage is wrong.
close – means the post still shows, but no-one can add to it
Trash – means put in trash, so the post is no longer shown
Unapprove – makes the topic pending – it is not seen in by users, only moderators and keymasters
sticky – puts the post above ordinary posts in the list – typically to have a topic always at the top
Keymaster – Can create, edit and delete other users’ forums, topics and replies. Can manage Tags, and moderate a forum with the moderation tools. Has access to global forum settings, tools, and importer.
Moderator – Can create and edit forums. Can create, edit and delete other users’ topics and replies. Can manage Tags, and moderate a forum with the moderation tools.
bbPress User Roles and Capabilities
Hi again,
I added this code:
if ( function_exists( 'bbp_enqueue_script' ) && function_exists( 'bbp_get_version' ) ) {
bbp_enqueue_script( 'bbpress-engagements', 'js/engagements.js', array( 'jquery' ), bbp_get_version(), true );
}
so now it looks like this:
add_shortcode( 'bbpresscomments', function() {
$output = '';
$current_id = function_exists( 'vcex_get_the_ID' ) ? vcex_get_the_ID() : get_the_ID();
$topics = new WP_Query( array(
'post_type' => 'topic',
'posts_per_page' => -1,
'fields' => 'ids',
) );
if ( $topics->have_posts() ) {
// enqueue scripts on this next line...
if ( function_exists( 'bbp_enqueue_script' ) && function_exists( 'bbp_get_version' ) ) {
bbp_enqueue_script( 'bbpress-engagements', 'js/engagements.js', array( 'jquery' ), bbp_get_version(), true );
}
foreach( $topics->posts as $topic ) {
if ( get_the_title( $topic ) == get_the_title( $current_id ) ) {
$output .= do_shortcode( '[bbp-single-topic id="' . intval( $topic ) . '"]' );
}
}
}
return $output;
} );
because I can see that code that enables all functionality including AJAX, is only enqueued for bbPress pages:
https://github.com/bbpress/bbPress/blob/afa6030c3e27c4fe582743074a603d25b5e4de48/src/templates/default/bbpress-functions.php#L151
And it’s not enabled for bbPress shortcodes.
Is this right?
Could you please tell me what is wrong with my code, and why cannot I enqueue the scripts that will enable AJAX for the shortcodes?
Instead of proper enqueuing, my code makes the buttons not work at all, when I click on them, nothing happens.
Looking in the browser developer tools, I think I can see what is happening. The problem is:
#bbpress-forums {
background: 0 0;
clear: both;
margin-bottom: 20px;
overflow: hidden;
font-size: 12px;
line-height: 18px;
and then there’s also .bbp-breadcrumb and .bbp-template-notice and so on.
And then there’s this CSS class defining the width inside the standard WP entry-content:
.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
max-width: 57rem;
width: calc(100% - 4rem);
}
What do you recommend as the best way forward, bearing in mind I will probably forget all about this after a couple of months! 😆
A child theme from Twenty Twenty?
Or just the appropriate CSS in the WP theme Additional CSS dialog?
When I input terms to the search form, it redirect to index.php.
<?php bbp_get_template_part( 'form', 'search' ); ?>
I went through troubleshooting here and changed search slag to ‘find’ but it couldn’t resolve.
Search Redirects to Front Page
I also tried common troubleshooting here: https://codex.bbpress.org/getting-started/troubleshooting/
Nothing changed.
It seems my customized theme causing an issue because it worked when I switched to the default ‘Twenty Nineteen’ theme it worked.
But I have no idea which part is causing the issue. Can somebody help?
Hi,
I’m struggling to set up bbPress so that the forum style adheres to the website style.
I wasn’t able to find the right place to change the font size on this page linked to above despite your guidance 🙁
I’m trying to read my way through the bbPresss documentation in codex.bbpress.org but it starts off getting right into the nitty-gritty by recommending I create a child theme and start writing CSS.
I’m using Twenty Twenty theme for the main site. I read that I might need to create a bbPress theme – but I think I need to read a lot more about that.
Any help gratefully received!
add_action ('bbp_template_before_single_forum' , 'rew_add_html' ) ;
function rew_add_html () {
echo '<b>hello</b>';
}
and amend echo '<b>hello</b>'; to what you want
Put this in your child theme’s function file –
ie wp-content/themes/%your-theme-name%/functions.php
where %your-theme-name% is the name of your theme
or use
Code Snippets
Hello,
I’d like to be able to add some custom html code to my forum pages, under the forum title and breadcrumbs, but before the first forum topic. How would I go about doing this?
Thank you for any assistance.
Ron
The reason is hard for me to debug this issue is that I am using this code to output a bbpress topic under each post that has the same name as the current post title:
add_shortcode( 'bbpresscomments', function() {
$output = '';
$current_id = function_exists( 'vcex_get_the_ID' ) ? vcex_get_the_ID() : get_the_ID();
$topics = new WP_Query( array(
'post_type' => 'topic',
'posts_per_page' => -1,
'fields' => 'ids',
) );
if ( $topics->have_posts() ) {
foreach( $topics->posts as $topic ) {
if ( get_the_title( $topic ) == get_the_title( $current_id ) ) {
$output .= do_shortcode( '[bbp-single-topic id="' . intval( $topic ) . '"]' );
}
}
}
return $output;
} );
This code is theme specific, so testing with an other theme doesn’t make sense in this case.
I will open now a ticket to my theme developer, but if you can see anything in this code that would make AJAX not work, please let me know.
Thanks.
Okay, got the following solution from a friend and it seems to work!
Posting the updated code here incase others have the same problem:
add_filter('woocommerce_disable_admin_bar', '_wc_disable_admin_bar', 10, 1);
function _wc_disable_admin_bar($prevent_admin_access) {
if (!current_user_can("keymaster") && !current_user_can("bbp_moderator") ) {
return $prevent_admin_access;
}
return false;
}
dashboard>settings>bbp stylepack> forums index styling and just change all tne font sizes to what you want
or
bbPress Styling Crib
Dear all,
Since a couple of months I am using a BBpress forum (and BBpress Attachments) on my WordPress (5.5.3) page (TopMag 2.0.2 theme) related to http://www.amrwr.nl
I’ve got a very strange thing going on: everytime I (or a different user) start(s) a new thread and insert a Youtube or blogspot link, a download is prompted (a pop-up with ‘open’ or ‘save as’ appears) and the message itself is not posted.
When I then open the downloaded file, the following code is displayed:
<!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML 2.0//EN”>
<html><head>
<title>503 Service Unavailable</title>
</head><body>
<h1>Service Unavailable</h1>
<p>The server is temporarily unable to service your
request due to maintenance downtime or capacity
problems. Please try again later.</p>
</body></html>
This currently happens in the following browsers: Mozilla Firefox, IE, Edge, Chrome, DuckDuckGo. Untill very recently, IE and Firefox did not have this problem…
I have done all the troubleshooting I could (given the knowledge I have) and are now quite lost as to how to solve this problem.
Any help would be much appreciated!
Regards,
Jascha
Hi there All,
I have enabled new registrations, by creating a registration page. and use the shortcode [bbp-register].
however, when I test this in incognito, I do received the email to complete my registration but it only contains
Username: john###
Email: john###@gmail.com
is there ment to be a password, or a link to create a password?
WordPress 5.5.1
bbPress 2.6.5
How can I solve this without adding custom code somewhere or adding more plugins for minor issues like this?
you can’t without doing one of the two. Given that every page rendition of a site without caching involves the parsing of many thousands of functions, and execution of several thousand, adding a plugin or some code to so this will add no perceivable delay to your site.
plugin wise
bbp style pack
code wise
https://codex.bbpress.org/layout-and-functionality-examples-you-can-use/#4-turning-off-or-changing-breadcrumbs item 4 to turn off homepage
Hi,
The breadcrumb shows the title of the homepage instead of Home. How can I solve this without adding custom code somewhere or adding more plugins for minor issues like this?
I use elementor pro as a theme framework.
Thanks.
Greetings
add_action( 'bbp_template_after_single_topic' , 'rew_add_shortcode2');
function rew_add_shortcode2 () {
echo do_shortcode( '[shortcode here]' );
}
I want put a html code under the reply form like the area shown in the picture. Could you give me such a code?

Thanks for spotting that. I’d assumed it was something I had done to disrupt BBPress but I hadn’t spotted the page was being refreshed and that it cleared the Javascript error from the console.
Until the issue is fixed, a better work-around is to add a filter to functions.php rather than modify the BBPress code directly. That way the fix should survive a BBPress update. I used…
// Prevent reply button in forums from executing a refresh of the page
add_filter('bbp_get_reply_to_link', 'ctcFixReplyToLink', 10, 3);
function ctcFixReplyToLink( $link, $r, $args ) {
return str_ireplace( '"return addReply', '"event.preventDefault(); return addReply', $link );
}