For the next version of BuddyPress there has been a fair amount of re-factoring work done. We’ve listened to your feedback from version 1.0 and made a number of internal changes that are going to make your lives as plugin developers and theme designers easier.
One of the biggest changes in BuddyPress 1.1 will be the way themes are built.
In version 1.0 BuddyPress required two themes to function. The first theme was a “WordPress home” theme that handled the blog and front page of your site. It was essentially a standard WordPress theme. The second was a “BuddyPress member” theme that would handle the display of pages generated by BuddyPress. There were many reasons for handling themes this way, but as time passed it was evident theming in this fashion was hurting the majority to help the minority.
In BuddyPress 1.1 there will be one single theme to handle everything. BuddyPress will ship with a social network framework theme that acts as a parent theme. The default theme will be a child theme based on this framework and contains only images and css. Building a new BuddyPress theme will be as simple as creating a child theme based on this framework. If you’re not familiar with child themes a quick google search will bring up lots of useful information.
This approach brings big benefits. When building a new theme you don’t need to re-create every template file. You can override specific template files where needed. Most importantly though, your theme will update automatically with the latest functionality when the framework theme is updated.
If you’ve already created a BuddyPress theme using the old system don’t worry, these themes will continue to work for at least the next couple of versions. You should find it fairly simple to convert your themes to the new system. The old default themes only took a few hours to convert over.
Using the framework theme is of course, just an option. You can still go ahead and create your own frameworks or mashups with a completely unique style or structure. As with WordPress themes, the possibilities are infinite.
If you’d like to get started with the new framework, I’d recommend running the trunk version of BuddyPress. The best way is to fetch this via Subversion, or you can download a zip of the current snapshot using the link at the bottom of this Trac browser page.
BuddyPress 1.1 is on track for a September release.
Update:: There seems to be confusion about using existing WordPress themes. You can still use any existing WordPress theme and copy over the extra templates from the framework theme. This will allow you to continue to use your current theme and also keep the same look and feel for BuddyPress features. You may need to make some some CSS adjustments.
The BuddyPress Framework idea is awesome!
Great step for BuddyPress. This actually works well for WordPress MU themes in general. We’ve been using this method at Substance for a while now and it has worked well.
I’ve been waitng and hoping for easier theming of members areas, so thanks. 🙂
This is great news, as I was literally getting ready to code the (cough) second set of theme files that applied to members, etc.
So the idea would be to, ideally, not touch the framework. And you would have enough control via CSS, template file overrides and custom.php to do pretty much anything without messing with the framework?
@David Lewis: Yes, you would not touch the framework at all. You can edit anything in your child theme by overriding files on an individual basis.
This is a fantastic idea Andy. I think I’m definitely going to have to dig into BP properly now.
This is great news – happy to see BuddyPress integrating frameworks and child themes. Brilliant!
Updating chapters as we speak 🙂
[…] on the BuddyPress Development blog, Andy Peatling has announced that the project will now have a new theme architecture. The big change between the old way of […]
Great idea about the theme framework, It would make theme dev a lot easier!
I understand that you can override any css, etc, with the use of the child theme.
But what if I want to use any theme out there, and integrate buddypress into it. Will this be possible then?
Great news… and a pretty dam good idea! member theme creation is such an headache!
I hope, it’ll have a better support for RTL!
That’s great Andy!! and it would be easier to custom…;-)
WOOOW! This is a wowwwww!!! I imagined this before, but now, it was so real! Thanks creating BuddyPress mate! 🙂
@James You can simply copy the template files and not use the framework. I was thinking of also creating a “theme extension framework” at some point, that could be used to extend an existing theme with BuddyPress templates. Not sure if that will work though.
This is great news – personally think the faster and easier GOOD themes are created, the more BuddyPress will gain momentum.
Yay!
Re: copying the template files.
If everything was available to be edited via the single theme including all of the buddypress core pages that are displayed that is just plain awesome work.
@Philip M. Hofer (Frumph): Yes, the new framework removes pretty much all of the hidden HTML in template tags and makes it easy to edit everything. There are also functions like bp_is_profile() bp_is_inbox() etc to isolate different pages.
Congratulations on achieving even more awesome.
Oh, and also, ditto to David Bisset’s comments, that is, I’ve also thought BP will get it’s fame when people build good themes. I’m working on it.
I know Lisa Sabin-Wilson is writing the book, but where is the documentation? I think that’s the other key to really making things happening, i.e., having very clear instructions on what does what and how to put BuddyPress together.
I’d be willing to help organize something, but I’ll need others.
Being able to edit everything without touching the Framework is a huge thing for BP. It is just brilliant!!!
@andy – This is really great news! One question … will we be able to create multiple child themes so members can select from them to customize their profile page ala MySpace or Ning? If so, will members be able to upload or link to their own CSS/images if desired?
If not, that does not diminish from this great news. It just gives me something to do once the new framework drops!
Yay, that’s great news. I’ve stopped working with BuddyPress, wanting to learn WordPress first. Maybe I’ll dip my toes into it again 🙂
Andy,
How it will be difficult to adapt an existing topic on the new format? Nobody warned about such major changes .. and whether there will be something abstract about the changes made? (for the most simple actions to change the order and the actual engine itself?) And, perhaps, an important question: in the next releases are anticipated major changes? well as the fruit of the same type social network – a very bad idea. Thanks in advance for answers!
Buddypress is getting better and better. Thanks a lot Andy.
Love the way this product evolves.
Errr,
I’m seriously lost on this, has the themes folder structure changed then?
Or is it still “wp-content/themes/bphome”
and..
“wp-content/bp-themes/bpmember”
[…] 1.1 eine neue Template-Architektur bekommen. Das verkündete jetzt der BuddyPress-Chefentwickler Andy Peatling im Community Blog von BuddyPress. Damit ist dann nur noch ein einziges Theme für die Darstellung der beiden Bereiche „Home“ und […]
simonbennett
if you’re using the latest trunk, move both the themes, bp-default and bp-sn-framework to the /themes directory
Excellent, thanks James. That makes sense now.
: D
[…] Artikel im englischen BuddyPress-Blog: “The New BuddyPress Theme Architecture” […]
This is scaring me! Can we go back to the old way please, lol.
Do I edit the theme in here “bp-sn-framework”?
What’s with all the other directories – “deprecated”, “bp-default”, etc.
I don’t suppose anyone has an “idiots guide” do they? If so, can they dumb it down some more and send it to me, lol.
Aha… sussed it. It’s a doddle when once you get your head around it!
: P
This is good news. I actually came up with a way to share common files among the two themes but it was pretty kludgy. This will be a much better way to go.
Thanks Andy!
I am running a WPMU/Buddypress/BBpress site with twelve (12) individual custom home themes for different types of bloggers to choose from and only one (1) common Buddypress member theme for everyone. – By design I don’t want or need any Buddypress home themes. – Are you sayin’ that I can copy my custom home themes into one common framework? – Or do I need to modify and create 12 iterations of the new framework to continue providing my original themes?- Having twelve frameworks might be OK if I can independantly skin the member side to match the look and feel of my custom home themes.
Did you fix the group avatar scaling problem? Everything else works fine with Buddypress except for the group avatars.
Thanks Andy
Juker: Avatar handling has been re-written. Your situation is unique, but you should be able to make it work by trying the new setup. You can always keep your setup the same until you can get something worked out.
Andy – This is great news! One question … will the new framework allow for the creation of multiple child themes that the member can select to customize their profile (like MySpace or Ning)?
Assuming this is the case, will members be able to upload/reference custom CSS and/or images?
If this is not the case, no worries. I’ll simply have a new project to work on.
Thanks,
Doug
[…] buddyPressé(e)s, le big boss l’a annoncé lui-même hier: une version 1.1 est planifiée pour […]
@Doug: Not the case, no.
Is there a sneak preview of the new theme so we can take a look? Or will it look the same as the current default BP theme?
Grazie un fratello molto…
I love it!! Brilliant that there is no need to mess around with the templates. Great job.
A theme extension network would be awesome!! If my vote counts can I use it for that? 🙂 Great job!! It really is getting better and better.
Waiting to see this in action ! 🙂
I don’t wanna use another social network platform, but you need more to convince me.
The theme problem is just part of the solution…
We need gallery module, video module, sharing pics from the personal gallery module in the common group gallery module ( as in Facebook )..
I think better media integration is the thing that can move this idea to the next level…
Greets from Bulgaria !
great …………………………….like it
As far as I understand there will be one theme (that is customisable child theme) to rule all site – the main blog, the users blogs and profile sections etc. But will be preserved the ability to have different themes for useres to choose from for their particular blog?… or there only be one theme for all blogs in time without any option?
Anyway I’m going to try the new system right now…
Andy, thank you for posting this info
Correct me if I’m wrong, but if I want to use a Premium WordPress theme for my homepage, do I have to somehow butcher and hack that theme into the bp-sn-framework?
@simonbennett
I would also like to know this, trying to integrate it with Thesis isn’t as easy as it was before.
I currently use Brian Gardner’s Church theme. Do I now have to hack that to bits and patch it together with the bp-sn-framework, or vice-versa?
Please tell me I’m being a pillock and all I have to do is drop the theme into a magical directory!
Surely, it would be absolutely crazy to move away from a system that allows “out-of-the-box” home themes to be used, and over to a system where you have to be a hardcore coder to customise it. This will eliminate tens of thousands of potential users in one foul swoop.