How do WordPress Roles/Capabilities work?
Seamless Integration with WordPress
s2Member integrates seamlessly with an existing WordPress® concept that facilitates varying degrees of permission across different portions of a site or service (including the backend of WordPress itself). So Roles/Capabilities are not something new that s2Member introduces, it simply works with and customizes an existing WordPress community concept.
For example, you may already know that site owners are normally WordPress Administrators. A WordPress "Administrator" being your Role on the site. This Administrator Role grants you the ability to do certain things, because it includes many different Capabilities (like
install_plugins, etc). To learn more about Roles/Capabilities in the WordPress core, please see this article in the WP Codex.
s2Member Roles/Capabilities (Including bbPress/BuddyPress Support)
When you install s2Member it adds some additional Roles and Capabilities to a default installation of WordPress. s2Member also makes extensive use of an existing Role in WordPress, the Subscriber Role. s2Member uses the Subscriber Role to classify Free Subscribers (i.e. people with an account—but they've not paid you anything yet). Or, maybe they have paid you for something in the past, but they were since demoted back down to the Subscriber Role (so they no longer have Membership privileges; i.e., Capabilities).
Upon plugin activation (or reactivation), s2Member creates a new Role for each Membership Level that you offer, and each of these Membership Levels gains incremental access; i.e., a Member at Level 3 can also access Membership Levels 2, 1, and 0. This is a basic structure that works well for a lot of business models. For added flexibility, s2Member also makes it possible to sell CCAPS (Custom Capabilities); where Custom Capabilities can provide access to as much or as little as you like (Posts, Pages, Categories, Tags, URIs, parts of a Post/Page, and more)— and without incremental access associated with Membership Levels coming into play whatsoever.
Since s2Member also supports bbPress & BuddyPress, Members at any Level (including Free Subscribers) will be able to spectate and/or participate in bbPress/BuddyPress forums too. Of course, you can also limit this sort of access using one of s2Member's many Restriction Options.
s2Member Custom Capabilities (CCAPS)
Custom Capabilities are for added flexibility. The WordPress function
current_user_can(), can be used to test for additional Custom Capabilities that you sell access to. Whenever a Member completes checkout, after having purchased a Membership from you (one that included Custom Capabilities), s2Member will add those Custom Capabilities to the account for that specific Member. You can watch this video to learn more about the power of Custom Capabilities.