Levels without incremental access
We're sometimes asked how it'd be possible to use levels but not give incremental access to the content.
Normally, a user would get access to content restricted at his level or below. So if the user is at Level 2, he gets access to content for Level 2, 1 and 0.
You may want to sell Level 2 but not have that user accessing Level 1 content. Custom capabilities would be better than levels in these situations. http://www.s2member.com/videos/A2C07377CF60025E/
That said, there are two ways in which you can protect content with levels and not have the users access content for levels below theirs.
In the page or post, use conditionals that check the user's level to show or hide the content. WP Admin -> 2Member -> Scripting -> Conditionals
Here are some examples from that documentation:
[s2If current_user_is(s2member_level2)] Some premium content for Level 2 Members. [/s2If] [s2If current_user_is(s2member_level1)] Some premium content for Level 1 Members. [/s2If] [s2If current_user_is(s2member_level0)] Some content for Free Subscribers. [/s2If]
You can edit the s2Member Level roles to remove the capabilities that give access to other levels.
You'd do that using another tool, like the User Role Editor. http://wordpress.org/extend/plugins/user-role-editor/
If you do this, you'll need to lock the roles so they aren't reset when updating s2Member. http://www.s2member.com/kb/locking-s2member-roles-caps/