BuddyPress 2.2 Spumoni Released, Featuring New Member Type API

BuddyPress 2.2 “Spumoni” was released today. The name pays tribute to L&B Spumoni Gardens, a 70 year old, family-owned pizza joint in Brooklyn, NY. This release is packed full of features that offer developers more flexibility in extending BuddyPress.

New Member Type API

BuddyPress 2.2 introduces a basic Member Type API that developers can use to create different user types, i.e. student, teacher, etc. This new API is a huge step forward for building niche social networks on top of WordPress. It makes it possible to restrict content, filter the member directory, assign different permissions, etc., based on different member types.

The API does nothing visible for users in this first iteration but can be utilized to create plugins that register different member types and build out further capabilities from there. Admins will be able to change a user’s member type, which is currently limited to one, via a new meta box that is added to the community profile screen.

Custom Post Type Support Added to the Activity Stream

Custom post type support for the activity stream is a major feature that has been three years in the making. Developers can now add support for their post types to be tracked in the activity stream in the same way that updates appear for regular posts via the blogs component. Adding support for CPTs is as simple as including one line of code:

[php light=”true”]add_post_type_support( ‘book’, ‘buddypress-activity’ );[/php]

Note that this feature isn’t automatically turned on – a custom post type must declare support for it. The single line of code will add a generic update that can be further customized via arguments added when registering the post type. Comment support for CPT activity items is also optional.

Custom post types with activity stream support can then be easily sorted via the activity dropdown filters:

Check out the BuddyPress codex for more information on how to customize activity attributes when registering a custom post type.

This release also adds support for Composer. BuddyPress will soon be listed at Packagist.org now that the official release is out.

Other notable features and improvements include:

Several new query API’s (based on WordPress improvements) for retrieving more specific results

Continued cache enhancements, particularly for multi-site and multi-network WordPress configurations

Message Meta – Private message conversations are now more flexible with an additional metadata table

The Activity and Extended Profiles components now support advanced conditional logic, like nested clauses and multiple operators — A AND ( B OR C ). The Activity component now also supports querying by multiple scopes.

Mentions: Better support for responsive devices

Improved UI for managing messages, new “Read/Unread” links for each message thread, better bulk message management

Numerous improvements to the Legacy template pack

Increased coverage of inline code documentation, actions, and filters

Check out the full list of improvements on the 2.2 version page in the codex.

BuddyPress 2.2 is the result of several months of hard work from 44 contributors. The new features in this release enable the plugin to be more flexible for building niche social networks with different user types and custom content types integrated into the activity stream. The official BuddyPress 2.2 update is now available via the WordPress admin.