You’ll be needing to modify
wp-content/plugins/bbpress/templates/default/bbpress/loop-single-topic.php
Heh, stop being so awesome in your replies. π
Anyway, me, the non-coder, still doesn’t understand why it(bbpress plugin) can’t simply have an option to use styles from other themes. If nothing else, the CSS etc would be a nice “base” for things like link colors, font sizes, whatever.
*sigh*
I tried bbPress Tweaks. Meh.
I’ll read the link you posted. Hopefully it doesn’t suck.
bbPress has such a non-WP feel about it though in everything I’ve come to expect from WordPress. Part of it is my frustration with PHPBB, and part of it is my frustration with not being able to get a non-sucky looking forum with bbPress.
And, I have yet to see a non-sucky bbPress based forum. Most are fairly crappy in how they present and deal with the content.
Easy of me to throw stones in a glass house when I don’t code I guess. I just wish there were more sane defaults in bbPress that looked better out of the box.
bbPress by default tries to use your themes default templates as it’s base. So it is already using your theme’s page template, maybe not the particular one you’re after, but it will be for your theme, or one you have created.
It will look for the following files in your theme in this order, and use that for it’s forums
plugin-bbpress.php
bbpress.php
forums.php
forum.php
generic.php
page.php
single.php
index.php
See https://codex.bbpress.org/step-by-step-guide-to-setting-up-a-bbpress-forum/ for more detail and how to get it to use a particular template.
Since some theme writers create a bbpress template, and some have variously named page templates, it would be kinder hard to get bbpress to work out which of your themes files are page templates, and which you want to use.
Yes, getting the right template to display forums can involve you in renaming and moving some files, but that’s because you have decided to use a non-default theme (no criticism), and so your theme writer and the writers of bbpress would need to be telepathic to know how the other one is going to code. As I said some themes actively allow for bbpress, for others it is just one of thousand of plugins.
The plugin bbPress Tweaks
https://wordpress.org/plugins/bbpress-wp-tweaks/
In dashboard>settings>bbpress tweaks allows you to select from available templates as a dropdown, so partly achieves what you are after.
I fully appreciate that WordPress and plugins can cause a lot of frustration, and no you’re definitely not a troll (yet!), but less heaven and hell in your posts would be better!
Ok, you need to do the following
If you have a child theme, then do this in there
If you don’t have a child theme, then seriously consider creating one, it’s very quick and easy, and will ensure that changes you make don’t get lost on theme or bbpress upgrades. Just google wordpress child theme videos and you’ll get lots of help.
In your theme create a bbpress directory
wp-content/themes/yourthemename/bbpress
then copy
wp-content/plugins/bbpress/templates/default/bbpress/loop-single-topic.php to this directory so that you have
wp-content/themes/yourthemename/bbpress/loop-single-topic.php
Edit this file to delete line 60 which says
<span class="bbp-topic-started-by"><?php printf( __( 'Started by: %1$s', 'bbpress' ), bbp_get_topic_author_link( array( 'size' => '14' ) ) ); ?></span>
and save.
bbPress will now use the file in your theme’s bbpress folder instead of the default, and you won’t lose your change on bbpress upgrades – but will it it is in your main theme, so if you don’t create a child theme, keep a note of what you changed, as if your theme updates, then you may/will lose the bbpress folder and file.
Thanks Robin and hi again… π
That doesn’t find anything that seems to pertain, plenty of padding in the normal sense for various aspects of replies… And pertaining to replies is what I’m looking for because that is where the nesting (offsetting? indenting?) or threading occurs, per the Reply threading setting in the forum settings section of the Admin settings section…
I’ve searched through directories everywhere that made sense, php and css, for terms like nest, thread, indent, offset… found nothing… It would need to be some sort of code that recognized whether it was a first, second or third reply, etc, and also somehow say how much to indent… It would also seem to need to some way be affected by the setting for it, as mentioned above…
I was kinda hoping to maybe attract John James Jacoby’s attention on this, noticing how much he seems to know in the various support areas I’ve looked over time..?
This would seem to be something that would be helpful to others as well..? The default indent distance I believe is much more than is needed to show nesting, and the less it indents the less the following indents will be crowded to the right, don’t know but maybe even get cut off…?
Thanks… It is nice when someone replies, doesn’t always happen… π
John.
Not a total new install but a new install of BBPress and we do have wishlist.
Also the page is not totally blank it still has the banner and footer but no menu or content generated. No side bar widgets.
I tried to deactivate the plugin without success.
Changing to the default template did work so its the AIR theme from Yootheme
So what next – look for something in the theme that could be causing it
Is this a new installation, or has this just started on an old one.
Try disabling all other plugins, and seeing if that fixes it. If so then re-add back one at a time to see which is causing.
If none, the switch to a default theme such as twentytwelve and see if it still occurs
Come back and let us know the results
Try
Step by step guide to setting up a bbPress forum – part 4
The actions are used in the templates held in
wp-content/plugins/bbpress/templates/default/bbpress/
Hello!
I’m having an issue with bbPress 2.5.3, Slider Revolution 4.0.5, and Woocommerce 2.1.2. I contacted Slider Revolution, and they said they couldn’t figure out the issue and that I should contact my theme creator since their plugin came bundled with my theme, but the theme creator says it isn’t a theme issue, so I’m reaching out to bbPress since the Woocommerce help desk is down for the weekend in hopes I can at least get a leg up – even though it’s a pretty weird triple-plugin conflict.
1. When all plugins are activated, layer styles in Revolution Sliderβs slide editor show a tiny white font in all the previews, but only generate default dark text.
2. When all plugins are activated, I cannot add a slider to a page where bbPress forums are active – it just doesn’t appear, even when I have disabled the theme’s default header, or tried to insert it via shortcodes or php. (Any other page and the slider loads fine)
3. When I deactivate bbPress and its associated plugins, the slider loads correctly because there is no forum on the page.
4. When bbPress and Woocommerce are both deactivated, everything works as it is supposed to in the editor as well.
Existing sliders on the website still load correctly – it’s just an issue of making new ones with a forum on the same page, and getting the editor to work. bbPress prevents a slider created in the Slider Revolution plugin from being published on a page with a forum, and Woocommerce messes up the editor.
Any help or ideas are appreciated. I’ve tried the troubleshooting options in the plugins and nothing seems to fix the issue. Thanks!
thanks for the help i do not have the default template this was created for me…is there someway i can get it?
and where do i copy it to and how? sorry im new to all this
The page you are using to display is a full width page.
Since you are using a child theme of twenty twelve, I presume you still have the default template which has a sidebar.
If so, then copy this file, and rename it to bbpress.php and put it into your theme’s root ie
wp-content/themes/twentytwelve-Child/bbpress.php
That will ensure that bbPress uses a template with a sidebar
@netweb Stephen, Thanks for this, and having now looked at the trac ticket and bbp_parse_args function I see how this works.
@nicmare
Wherever you see bbp_parse_args, there’s a filter for the function to do this.
bbp_parse_args has the format
function bbp_parse_args( $args, $defaults = array(), $filter_key = '' )
The resultant filter name is made up of bbp_before_’ . $filter_key . ‘_parse_args’
(there is an bbp_after one as well!)
The filter key is the third argument in the bbp_parse_args
$r = bbp_parse_args( $args, array(
'before' => '<ul class="bbp-forums-list">',
'after' => '</ul>',
'link_before' => '',
'link_after' => '',
'count_before' => '<span>',
'count_after' => '</span>',
'count_sep' => '</span><span>',
'separator' => '',
'forum_id' => '',
'show_topic_count' => true,
'show_reply_count' => true,
), 'list_forums' );
so ‘list_fourms’ in the last line is the third argument.
This should help you for the other two functions, as filters will then be obvious !
Ok, the problem is, these features should be integrated into bbPress by default, all forum software has this, and the plugins for quoting for example don’t work like it should, and signature plugins are also outdated and not the best.
EDIT: Didn’t see two posts above, editing post…
Sorry, totally misread this – thought you had posts mirroring and wasted to get rid of them.
I suspect that it would be very hard to get them to just replicate in the database, hits at core code.
But you could re-do your forum templates to show them twice.
Beyond my immediate knowledge, but start by looking at you forum page loop, and then the templates viz
wp-content/plugins/bbpress/templats/default/bbpress
ok, so I know how to filter variables (and am documenting for the codex), but I cannto figure the syntax for an array.
As an example (and apologies for long code – but in this case hope you’ll let me off!)
function bbp_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 );
// 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'];
}
// Output the list
echo apply_filters( 'bbp_list_forums', $r['before'] . $output . $r['after'], $r );
}
}
If I wanted to turn off the topic and reply counts, I could use a filter which would look something like
function hide_forum_counts () {
$r['show_topic_count'] = false ;
$r['show_reply_count'] = false ;
$r['separator'] = ' ';
return $r ;
}
add_filter('bbp_list_forums','hide_forum_counts') ;
Stephen, JJJ or other bbp genius – can you post the answer, I have tried everything to prevent needing to copy all the original function, but have failed
Yes. So this is my code which works:
add_filter('bbp_list_forums','custom_bbp_list_forums',10);
function custom_bbp_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' => '',
'link_after' => '',
'count_before' => '<span>',
'count_after' => '</span>',
'count_sep' => '</span><span>',
'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 );
// 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'];
}
}
// Output the list
echo apply_filters( 'bbp_list_forumss', $r['before'] . $output . $r['after'], $r );
}
}
but maybe there is an easier way to modify arguments array?!
BBpress uses your themes page.php file as default page template.
If you copy this (or any other page template) into the root of your theme and call it bbpress.php, it will be used instead.
ie
wp-content/themes/yourtheme/bbpress.php
If you are after individual templates, these are held in :
bbpress/templates/default/bbpress
If you want to alter these, create a bbpress folder under your theme
ie
wp-content/themes/yourtheme/bbpress
then any of these templates that you copy to this folder will be used instead, and you can modify them there.
Ok, it should all be fine.
Suggest you start by deactivating all your other plugins to see if that fixes. If it does, then add back one at a time to see which is causing it.
If that doesn’t work, try changing to a default theme such as twentyeleven and see if that fixes
Come back and let us know if that gets you anywhere
ok, try deactivating all your other plugins, and see if it then works. If it does, then add one at a time to see which is causing the issue.
If still failing, switch to a default theme such as twentyeleven to see if it is theme related
Presuming you are using latest versions, these should work fine together.
What other plugins have you got? Deactivate all other plugins except buddy and bb, and see if they are then ok.
If not, then try switching to a default theme such as twentyeleven to see if it is theme related.
If it is ok with just theme and bbpress and buddypress, add back plugins one at a time to see which is casuing the conflict
Yes it can be done, but you’d need to have some coding skills.
You’d need to amend loop-single-reply.
Start by creating a directory called “bbpress” under you theme directory
ie
wp-content/themes/what-every-yourtheme-is/bbpress
and copy this file
wp-content/plugins/bbpress/templates/default/bbpress/loop-single-reply.php
to it
This file is then used by a higher loop to display the topic and replies as you now see them, with avatars and all the content.
You can then amend this file to display as a single line items, presumably with a post link attached.
The site was using one of the options for permalinks, not the default, and for whatever reason, only the default works. Fixed now.
You should create a bbpress directory under your theme
ie
wp-content/themes/yourthemename/bbpress
and copy any bbpress templates to there.
bbPress will then use these instead of the default template ones
Otherwise any templates you alter will be overwritten by any upgrades and you’ll have to do the work all over again !