There is a new framework in town, this one is called BuddyMattic. Developed by Ron Rennick with help from Daisy Olsen, BuddyMattic is a theme framework based on Thematic that can be used on WordPress, WordPress MU, and BuddyPress. The unique feature of this theme is that BuddyPress functionality is included in the framework and is activated whenever BuddyPress is detected. I had the chance to ask Ron a few questions regarding BuddyMattic.
The designs for BuddyMatic, do they have to be child themes based on Thematic?
No, buddymatic includes a sample Buddymatic child theme and child themes can be created by changing the sample child theme. For example, in creating the Coffee with Friends child theme that is included with Buddymatic, Daisy Olsen started with the Buddymatic sample child theme.
In a WordPress or WordPress MU blog without BuddyPress enabled, Buddymatic and Thematic are interchangeable and any child theme can be switched from one to the other by changing references to the template (and any includes) from one to the other.
Could you go into a little more detail regarding the BuddyPress detection/activation and how the design incorporates that functionality?
After returning from WordCamp NYC I added an explanation to the BuddyPress codex showing how BuddyPress could be detected and conditional code executed based on it’s presence : http://codex.buddypress.org/how-to-guides/checking-if-buddypress-is-active/.
Buddymatic relies entirely on WordPress / BuddyPress hooks & templates to add the BuddyPress functionality. In every function added via hooks, there is a check to see if BuddyPress is active.
Anytime BuddyPress updates, does that mean the framework has to be updated as well?
Generally, no. An example of where a new version might be required would be custom content support in WordPress themes when that functionality is added in 2.9. That type of change should only be on major releases of WordPress and/or BuddyPress.
Good questions. I still wonder about the upgrade process when WP and/or BP upgrade functionality. I’ll have to dig through the files and file structure for all of them. I’m thinking of applying this concept to theme Hybrid as I have no experience with Thematic and like Justin’s coding.