Are you (or do you aspire, from the bottom of your heart, to be) a BuddyPress plugin developer? For several years, the go-to template for building BP plugins has been the BuddyPress Skeleton Component, originally written by Andy Peatling and Jeff Sayre. Through time, the original BPSC has gotten a bit out-of-step with the current best practices for BuddyPress plugins. And with the recent release of BuddyPress 1.5 – with its new BP_Component class and a whole load of new goodies for plugin devs – the time was ripe for revisiting the Skeleton Component.

And so, available immediately is the brand new BuddyPress Skeleton Component, version 1.6! A quick overview of improvements:

  • Refactored to use the BuddyPress 1.5’s new BP_Component class, making it dead-simple to register globals, create navigation items, and hook into the BP load order
  • File structure reorganized to better reflect BP 1.5’s organization, and to provide more fine-grained access to functions
  • Data storage class totally refactored, to use custom post types and WP_Query, instead of custom database tables.
  • Added a small guide for creating a top-level component directory (a “root component”), which was missing in earlier versions
  • Tons of documentation added and revised
  • All WP_DEBUG notices removed

Please note that, due to its use of BP_Component class and other new features, plugins based on BPSC 1.6 will only work with BuddyPress 1.5 or greater. If you need to retain compatibility with earlier versions of BuddyPress, it’s recommended that you *first* build your plugin for the current version of BP, and then build the 1.2.x compatibility as an afterthought. See the “1.5 plugin update” series on bpdevel.wordpress.com and earlier versions of the Skeleton Component for more details on building plugins for BP < 1.5.

Questions, comments, or suggestions about the BuddyPress Skeleton Component? Check out the buddypress.org forums. You can also follow (and contribute to!) the plugin’s development here.