latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

A few questions before I buy the pro version

Home Forums Community Forum A few questions before I buy the pro version

This topic contains 17 replies, has 3 voices. Last updated by  Bruce Walker 4 years, 8 months ago.

Topic Author Topic
Posted: Wednesday Apr 18th, 2012 at 9:48 pm #11180

I’m doing a project that requires membership that needs to support the following:

(1) Multiple free membership levels

(2) Multiple paid membership levels

(3) Integration with forum software. I’m currently looking at BuddyPress, bbPress, Simple-Press,and phpBB. I need a strong forum format with buddies/friends and private messaging. Some of the social stuff (ie buddy blogs) would be nice. What do you recommend that would be the best to work with S2 Member. I’m totally open to ideas.

(4) Ability to setup payments via PayPal for both monthly, quarterly, and annual renewals.

(5) Ability to integrate with affiliate tracking systems. If you have one you can recommend I’d appreciate it. I need to be able to split and breakout commissions to three targets based on a predefined percentage of of the sale (i.e. 20% to the affiliate, 20% to the service rep, 10% to the manager).

(6) And this is a biggie. The ability to limit user access to specific pages, file downloads, or videos on a per user basis and/or a membership level basis.

Thank you in advance.

Bruce A. Walker
DataPlex Technologies

List Of Topic Replies

Viewing 17 replies - 1 through 17 (of 17 total)
Author Replies
Author Replies
Posted: Thursday Apr 19th, 2012 at 7:17 am #11223

Hi Bruce.

1. Yes. Video » s2Member (Free Registration On Multiple Levels?)

2. Yes.

3. You can use the URI restriction with any forum that works from WordPress, not outside. [hilite path]Dashboard -› s2Member® -› Restriction Options -› URI Access Restrictions[/hilite]

bbPress is the one that s2Member is currently more integrated with. [hilite path]Dashboard -› s2Member® -› Other Integrations -› bbPress®[/hilite]

4. Yes. Video » s2Member (PayPal® Options/Buttons)

5. Yes.
Video » s2Member (API Tracking/Notifications)
Video » s2Member (iDevAffiliate Integration)

6. Yes.
Video » s2Member (Custom Capabilities)
Video » s2Member (Client Portals?)
[hilite path]Dashboard -› s2Member® -› API / Scripting -› Custom Capability and Member Level Files[/hilite]

I hope that helps. :)

Posted: Thursday Apr 19th, 2012 at 2:29 pm #11283

Hi Cristián,

Thanks for the fast reply. There was one other thing (I’m sure I’ll think of more):

(6) Integration into aWeber. What I’d like is that when someone joins my site that they get added to the proper email lists. I’d even like to allow them to select which emails they receive.

For the forum, I’ll be looking at bbPress as you recommend. Does this support any of the social stuff like “friends” and personal “blogs”? I know BuddyPress does, but I didn’t care for their implantation of the forums using groups.

Thank you so much for your help.


Posted: Friday Apr 20th, 2012 at 2:16 am #11330

About groups and stuff, then it’d probably have to be BuddyPress, I don’t know that bbPress alone has it.

s2Member has an integration for AWeber.

Video » s2Member (API List Servers)
[hilite path]Dashboard -› s2Member® -› API / List Servers -› AWeber®[/hilite]
[hilite path]Dashboard -› s2Member® -› API / List Servers -› Registration Double Opt-In Box[/hilite]
[hilite path]Dashboard -› s2Member® -› API / List Servers -› Automate Unsubscribes/Opt-Outs[/hilite]

I hope that helps. :)

Posted: Friday Apr 20th, 2012 at 5:27 am #11347

Yes very helpful. I don’t see S2 as a problem. I’m still stumbling over the forum and social parts of the site.

bbPress sounds more like the forum I want. But BuddyPress has the social features, private messaging etc.

My understanding was that BuddyPress uses bbPress as the forum but they have their social twist on it. I wonder if I can break out bbPress and just run it in tandem but BuddyPress rather as one integrated package.

I know this isn’t really a question for you at S2 but I figure you’ve run into a lot of questions like this.’

One question on purchasing. If I buy the single site license, is there an upgrade path to the multi-site license?


  • This reply was modified 4 years, 8 months ago by  Bruce Walker.
Posted: Friday Apr 20th, 2012 at 6:43 am #11356

Yeah, in your Account page you’ll have an upgrade link to pay just the difference in price between the licenses. :)

I haven’t seen that question asked before, but I see what you want to do. I think that’d be better asked in the BuddyPress or bbPress forums, though. I don’t have much experience with either one. :/

Posted: Friday May 4th, 2012 at 4:50 am #12558

Cristian, is there a way to implement URI restrictions based on CCAPs alone? The intention is to restrict access to certain parts of a forum based on a user’s CCAPs.

I really hope so!

Thanks for your stellar support,

Posted: Friday May 4th, 2012 at 5:06 am #12563

Not yet, Kenny, but we have it in the list of things to add. Thanks for your comment, I’m counting it as a vote for it. :)

Posted: Friday May 4th, 2012 at 5:09 am #12564

Thanks for the response. I found this thread after I asked the question to you:

Does that solution work? I’m not set on the forum I want to use, so if using buddypress means I can restrict forum access by ccap, then I’ll go with buddypress.

Posted: Friday May 4th, 2012 at 5:25 am #12569

Well, if you create a hack to do it, then you can apply the ccap restriction to anything that’s served through WordPress. So if you have another forum that runs in WP as a plugin, you could do it.

Here’s an example of a hack Jason wrote for another user to restrict BuddyPress access using ccaps:

You will have to tweak it a bit to get it working the way you need it, but it’s not impossible. :)

I hope it helps. :)

Posted: Friday May 4th, 2012 at 5:31 am #12571

Thank you! I’ll take a shot at tweaking Jason’s code. I’m looking forward to core integration at some point :)

Until then, it’s hax0rz for me!


Posted: Friday May 4th, 2012 at 5:33 am #12573


Posted: Wednesday May 9th, 2012 at 8:53 pm #13103

Cristian, I’m using bbpress and things are great. I can assign CCAPs on a per-forum basis via the wp page editor because bbpress treats each forum as a standard wordpress page.

But, when viewing a single page, I need to be able to restrict access to that page based on whether the user can access its parent page. Or, better, whether the user can access the last ancestor.

I can get the last ancestor page with normal wordpress commands:

$parent = array_reverse(get_post_ancestors($post->ID));
$first_parent = get_page($parent[0]);

But how do I check to see if the current user can access that page? If the user were to navigate to that page in a browser, they would be restricted by the CCAP on that page and redirected accordingly.

So close to solving this puzzle,



Posted: Wednesday May 9th, 2012 at 8:56 pm #13104
Posted: Wednesday May 9th, 2012 at 9:10 pm #13105

Thanks! Correct me if I’m wrong, but those functions only take integers, right? Can I pass a var to that?

Posted: Wednesday May 9th, 2012 at 9:26 pm #13106

The functions are documented there, and they are also linked to the code so you can inspect it closer if you need to. ;)

Posted: Thursday May 10th, 2012 at 12:40 am #13113

Thanks Cristian, it took me a bit to figure out how to get the wordpress page ID as an integer dynamically, but I got things working.

For anyone else out there, here’s my solution for restricting bbPress access. In short, this checks if the current user has access to the most distant ancestor of the current page. For example:

Level 1 Forum/Category > Subforum1 > Subcategory > Subforum2 > Current Topic

No matter which page they arrive at in the tree, they must have access via s2member to the top-most level. Then it’s a simple matter of assigning a ccap to that Forum, or a membership level.

1. Include the following in your functions.php file
2. Include a call to the function in EACH of your bbPress template files BEFORE the template calls for the forum content. Match the HTML structure of the error message to suit your theme. You need to include closing tags for any open divs.
3. Test!

/******* bbPress Forum Access *******/
function checkForumAccess() {
	if(get_post_type() == 'forum' OR get_post_type() == 'topic' OR get_post_type() == 'reply') { // check if user is viewing a forum page. If so, continue.
	//check if they have access to the top-most parent forum/category (both are Pages in wordpress). If not, show the error verbiage. If they have access, continue and show the content like normal
	$parent = array_reverse(get_post_ancestors($post->ID)); // get an array of all the parent pages in order from most distant to closest.
	$first_parent = get_page($parent[0]); //get the first page in the array, which is the most distant parent
	$int = apply_filters('the_ID', $first_parent->ID); //filter the $first_parent to get only the wordpress page/post ID, which is an integer like 49 or 565. store it as a variable $int
		if (!is_page_permitted_by_s2member($int)) { // this is an s2member function. Check if the current user can access the $first_parent, via the stored page/post ID in the $int variable
// here comes your custom error message. Remember to \escape any apostrophes
			echo '
				<h1 class="entry-title">Sorry!</h1>
				<div class="entry-content">
				<p>It looks like you don\'t have access to this forum.</p>
				<p>If this is an error and you should have access, please contact us here: (contact URL) 
		</div><!-- #content -->
	</div><!-- #contentWrapper -->
</div><!-- #primary -->
			exit; // Important. This prevents the rest of the page (the secure forum content) from displaying
Posted: Thursday May 10th, 2012 at 1:22 am #13120

Very cool, Kenny, thanks for sharing that! :)

Viewing 17 replies - 1 through 17 (of 17 total)

This topic is closed to new replies. Topics with no replies for 2 weeks are closed automatically.

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.