A quick review of some recent changes.
- Better user administration. Admins can now promote/demote/delete users.
- Better topic and post adminstration. Moderators can now move topics from one forum to another, browse deleted topics and posts, and undelete.
- Views. The fully pluggable views functionality allows users with specified capabilities (see below) to browse customizable content. Native views allow anyone to browse by topics with no replies, unresolved topics, or untagged topics. There is also a view that allows moderators to browse all deleted topics (see above).
- Capabilities. bbPress has shifted from the hierarchical user_type permissions system to a generic role/capability model. The new system is much more flexible and makes it much easier to keep track of who can do what.
There have been several changes in the code over the past few weeks. Rather than explaining them in detail, I’ll just highlight the most interesting ones.
- Profile pages now have a (pluggable) menu through which an increasing amount of administration can be done.
- Like it’s cousin, usermeta, a new table, topicmeta, has joined the bbPress database family. Both meta varieties use the same code, which has seen some substantial efficiency improvements.
- Quick (and arguably dirty) plugination. The API’s a bit different than what’s used over at WordPress, particularly the UI API. It’s not as friendly, but it’s a trooper; it really gets the job done. Expect an simple plugin to be included in the initial release to serve as an example.
- Some bugs related to sharing users and/or usermeta across separate forums/blogs/etc. have been squished in order to make sure Matt tells the truth 😉
PS: A quick reminder that action and filter hooks are always up for grabs. Suggestions welcome!
I just wanted to note that now bbPress can completely and seamlessly integrate and share a user system with any number of bbPress forums, and any number of WordPress or WordPress MU blogs.
To those of you who didn’t find the last post quite as exciting as I did, perhaps you’ll appreciate what the new architecture allows when you hear about its first feature: Customizable RSS feeds.
Users can specify a custom set of topics from which their personal feed will draw recent posts. Currently, users can specify a maximum of 40-100 topics (the exact number more or less depends on the total number of topics in your forums) to follow. If a user adds too many topics, the first ones added will get bumped off the list.
You can check it out by visiting your user profile in the most recent copy of bbPress (and, yes, better upgrading scripts are on the list!).
The users table has been pared down to include only core user information. Additional information about each user can be stored in the new usermeta table. Accessing the information is just as easy as it always was; both the core and the meta information are included in the good ol’ $user object.
For anyone out there twisting their installs around to see what bbPress can do, you only need to know two things:
update_usermeta( $user_id, $meta_key, $meta_value );
- Don’t add to
$user_cache manually; always use bb_get_user( $user_id );
Sorry about all the technical whatnot, but it’s a big, exciting change!
In order to help both those who ask questions in a support forum environment and those who answer them, topics can now be given a resolution status. Moderators and the original poster are able to change a topic’s resolution state to “resolved”, “not resolved” or “not a support question”.
After the appropriate interface decisions have been made, resolution status will also be taken into account and reflected in the various default templates.
Support for tag removal, renaming, destruction and merging has been added in bbPress.
Users can remove their own tags from any post, and moderators can remove any tags from any post. Moderators with sufficient permissions (user_type >= 2) can also rename tags, destroy tags (completely remove them from the database), and merge one tag into another.
bbPress now has rudimentary tag support and gorgeous URIs that don’t require mod_rewrite. You can see both in action on the WordPress forums and I’ll be revving the tag support significantly in the coming weeks. There have also been numerous profile and performance enhancements you may want to check out.
Users can now reset passwords in bbPress, in fact we’ve updated how the system deals with failed logins completely. Feedback is a lot better now if the username or password is wrong.
I’ve caught up on most of the open bbPress bugs, so if you’re running bbPress somewhere I would recommend upgrading to the next nightly. Most notable, users can now edit their profiles and passwords and you can now override cookies to allow for easier integration.