BuddyPress 1.9 To Retire Default Theme and Add New Notifications Component

BuddyPress 1.9 beta has been slightly delayed, but lead developer John James Jacoby says that it’s not too far off course. There are 43 tickets left in 1.9. During the BuddyPress development meeting today, BP core contributors addressed tickets that need more attention and caught everyone up for where 1.9 is headed.

BuddyPress 1.9 Will Introduce a New Notifications Component

One of the exciting new features coming in the next release is a separate notifications component. “I’ve wanted it to be it’s own component for some time, and we’re doing that in 1.9,” Jacoby said. “We’re adding a UI for it now, and allowing for read/unread marking. There are some improvements to the underlying code, but no breaking changes, schema changes, etc.”

According to BP core developer Boone Gorges, the new notifications component is largely adapted from BP_Core_Notification. He clarified: “The underlying code is actually brand new, in a new component directory, bp-notifications, with new function/class names.”

The good news is that third party plugins will not be affected by changes made to add the new notifications component to the core. Jacoby assured developers that this is not going to break everything. “Existing plugins/third party plugins will continue to work as they do.”

For 1.9 they are shooting for the following features to be included with the component:

Ability to enable/disable at the component level.

Add a UI for read/unread notifications.

A control panel for moderators to see all notifications, to clear them, delete them, etc…

Allow users to toggle notifications back to unread.

Improve the BP_Core_Notification class methods so they are more flexible like the activity and group components.

A dedicated notifications screen will be introduced to provide a log of notices for each member and is likely to be located at: members/username/notifications. The new component will allow for a lot more interesting interactions with BuddyPress notifications.

Goodbye BP Default Theme

The last part of the BuddyPress development meeting was dedicated to discussing the inevitable retirement of the BP Default theme. BuddyPress 1.7, released earlier this year in April, introduced theme compatibility. This made it possible for BuddyPress to be dropped into any WordPress theme. Boone created a ticket that proposes a solution to stop offering bp-default on new installations.

As of 1.9, we should no longer offer bp-default as an installable theme for new installations. This will be the first step in the longer-term task of removing bp-default from the BP codebase, and spinning it out into its own theme.

The patch Boone submitted stops BuddyPress from registering the bp-themes theme directory unless it finds one of the following cases to be true:

The current theme is bp-default (get_stylesheet())

The current theme is a child of bp-default (get_template())

That means that there is nothing to worry about if you are running the default theme or a child theme derived from it. You will still be able to update your community to BuddyPress 1.9 when the time comes.

There is some work to be done here, as the team will need to provide an upgrade route for bp-default for future BuddyPress releases, but everything is moving in the right direction. As of 1.9, the BP core team will stop active development on the default theme. With that, BuddyPress will bid a fond farewell to BP Default and will focus on making its components more awesome for all WordPress themes.