BuddyPress & BuddyBoss Private Community with PMPro – Restrict Profiles, Groups, Messaging, Forum Discussions

Description

The most popular WordPress plugin for private communities.

Use BuddyPress or BuddyBoss with Paid Memberships Pro to create a members-only private community in your WordPress site. This plugin enables secure, private messaging, groups, member directories, and private profiles for members of your free or paid community.

This integration allows the site owner to control access to the most popular community features in BuddyPress and BuddyBoss.

Restrict Community Features

Use this BuddyPress and BuddyBoss plugin to restrict your membership site for multiple user types including visitors, non-members, and members. Offer private groups, private messaging, a member directory, and more in your private social network.

  • Groups: Restrict the ability for visitors and members to view, join, and create groups. You can also restrict access to the list of available groups in your community.
  • Messaging: Restrict the ability for visitors and members to send public or private messages.
  • Friends: Restrict the ability for visitors and members to send or accept friend requests.
  • Member Directories: Restrict visitors and members from being included in the member directory.

Restrict Forums and Community Discussions

If you include discussion boards and forums in your community, check out our bbPress Integration. With BuddyPress or BuddyBoss and PMPro you can:

  • Restrict Forum Discussions by Membership Level.
  • Assign a Forum Role by Membership Level.
  • Adjust the error message shown when a user does not have permission to view discussions.
  • Show a member’s level name in line with their discussion replies. This helps other community members see another member’s access level.

Learn more about protecting your members-only community with Paid Memberships Pro in our documentation site.

Compatible with BuddyPress and BuddyBoss

Like BuddyPress, the BuddyBoss Platform turns your WordPress site into a robust community, with social networking features including groups, discussions, messaging, friends, and more. Community users can organize themselves into public, private, or hidden social areas with separate activity feeds and directories.

The platform is an evolution of BuddyPress and bbPress, consolidated into a single area of settings. For this reason, you can use the existing PMPro Add Ons for BuddyPress and bbPress to restrict features in BuddyBoss.

About Paid Memberships Pro

Paid Memberships Pro is a WordPress membership plugin that puts you in control. Create what you want and release in whatever format works best for your business.

  • Courses & E-Learning
  • Private podcasts
  • Premium Newsletters
  • Private Communities
  • Sell physical & digital goods

Paid Memberships Pro allows anyone to build a membership site—for free. Restrict content, accept payment, and manage subscriptions right from your WordPress admin.

Paid Memberships Pro is built “the WordPress way” with a lean core plugin and over 75 Add Ons to enhance every aspect of your membership site. Each business is different and we encourage customization. For our members we have a library of 300+ recipes to personalize your membership site.

Paid Memberships Pro is the flagship product of Stranger Studios. We are a bootstrapped company which grows when membership sites like yours grow. That means we focus our entire company towards helping you succeed.

Try Paid Memberships Pro entirely for free on WordPress.org and see why 100,000+ sites trust us to help them #GetPaid.

Read More

Want more information on members-only communities, private groups and messaging, and WordPress membership sites? Have a look at:

Screenshots

  • PMPro BuddyPress Settings - Explore and manage the features of the integration plugin, including Page Settings, Membership Level Settings, and General Settings.
  • Membership Level Settings - Define how you want to restrict BuddyPress for each Membership Level under Memberships > Settings > Memberships Levels > Edit.
  • Group and Member Type Settings - Add or Invite Members to Groups and Assign Member Types by Membership Level under Memberships > Settings > Memberships Levels > Edit.

Installation

Note: You must have Paid Memberships Pro and BuddyPress or BuddyBoss installed and activated on your site.

Install PMPro BuddyPress from within WordPress

  1. Visit the plugins page within your dashboard and select “Add New”
  2. Search for “PMPro BuddyPress”
  3. Locate this plugin and click “Install”
  4. Activate “Paid Memberships Pro – BuddyPress Integration” through the “Plugins” menu in WordPress
  5. Go to “after activation” below.

Install PMPro BuddyPress Manually

  1. Upload the pmpro-buddypress folder to the /wp-content/plugins/ directory
  2. Activate “Paid Memberships Pro – BuddyPress Integration” through the “Plugins” menu in WordPress
  3. Go to “after activation” below.

After Activation: Configure Plugin Settings

There are four primary settings areas in this plugin.

1. Select Your Preferred Registration Process

This plugin allows you to use the BuddyPress or BuddyBoss user registration process (in place of the standard Paid Memberships Pro membership checkout process).

  1. Navigate to Memberships > PMPro BuddyPress in the WordPress admin.
  2. Change the “Registration Page” setting to “Use BuddyPress Registration Page”.
  3. Save Settings.

Note: If your membership is not free, you must use the Paid Memberships Pro membership checkout process. If you have a free community and want to allow users to register through BuddyPress or BuddyBoss, you must adjust this setting.

If you’d like members that register through the BuddyPress or BuddyBoss system to also be given a membership level, check out this guide on setting a default level for all user registrations in WordPress.

2. Assign the “Access Restricted” Page

Navigate to Memberships > Settings > Pages to create or edit the “Access Restricted” page.

This is the page that visitors and users are redirected to if they cannot access restricted BuddyPress or BuddyBoss features.

3. Configure Membership Level Settings

Navigate to Memberships > Settings > Membership Levels and locate the “BuddyPress Restrictions” section.

From this section you can adjust settings for how you “unlock BuddyPress” for members of this level, including:

  • Group Creation
  • Single Group Viewing
  • Groups Page Viewing
  • Joining Groups
  • Public Messaging
  • Private Messaging
  • Send Friend Requests
  • Include in Member Directory

Next, adjust the “BuddyPress Group Membership” settings to add or invite members of this level to your existing BuddyPress Groups.

If you want to adjust BuddyPress Member Types, you must first create the types through custom code. This post explains how to add Member Types to BuddyPress.

Read our full documentation on Membership Level Settings for your BuddyPress or BuddyBoss community here.

4. Configure Settings for Logged in Non Members

Some of your WordPress users may not have a membership level in Paid Memberships Pro. This plugin allows you to set how BuddyPress should be locked down for these users without a membership level.

Navigate to Memberships > Settings > PMPro BuddyPress and locate the “Non-member User Settings” section.

Read our full documentation on Non-Member Users in BuddyPress or BuddyBoss here.

Reviews

5 May 2022 1 reply
In version 1.2.7 a check was added to assure BuddyPress is loaded. This check is implemented WRONG and breaks XProfile field synchronisation. Details: profile.php, line 17 defined() is used to check if a function exists instead of function_exists() [Edit: This issue got fixed in v1.2.8. Changed rating.]
11 April 2022 1 reply
Edited the review (April 11, 2022) Their team addressed the issue within a few days of my posting. This is excellent. Thanks you all. Original review (April 8th, 2022) Used to work fine, but something broke So it looks to still be actively updated, but something they did has caused the Buddypress group membership function to stop working correctly. I don't know when this happened as I was experimenting a few months ago and it worked fine. But I just reinstalled and tried the process with the new version and now this specific function doesn't work. Everything appears correctly on the membership setup page. But when I change a user on the backend or when a user changes their membership on the front end through the registration page, the user is not added to the groups they are supposed to be assigned to. Sooo, until this can be fixed, the whole point of this plugin fails for me. 2 stars because this is a deal breaker for me, despite the other features working fine.
9 December 2019 1 reply
Upto few weeks back the pluggin did what it says on the box but now does not. The best in my opinion was to assign groups on reg. Not working now and the question in support have until now not been addressed. Because of this the major function malfunction 1star
7 September 2019
I wanted to restrict users ability to communicate unless they are paying. However, it does nothing to restrict them from communicating on the activity feed. That leaves a huge gaping hole in my paywall.
10 July 2019
The level restrictions don't work as expected. I set Level One to only allow viewing the groups page. Clicking on the group title brings up ‘Access Restricted’ which is good. The problem is that there is also a button to ‘Join Group’ which will let the level One user join and access the group, bypassing the restriction! The same problem is encountered with a private group, except the button lets Level One users ‘Request Membership’. The settings requires a Level Two Membership to be able to join groups. The plugin contact page says, "Unless we are expecting your email, we may not be able to reply in a timely manner. If you have a “support-related” question, please use our Member Support Area." The Member Support Area requires at least $300/ year upgrade to get support. Also, the add-ons can't be purchased separately, you can only get them in a bundle with the 'Upgrade'.
Read all 8 reviews

Contributors and Developers

“BuddyPress & BuddyBoss Private Community with PMPro – Restrict Profiles, Groups, Messaging, Forum Discussions” is open source software. The following people have contributed to this plugin.

Contributors

“BuddyPress & BuddyBoss Private Community with PMPro – Restrict Profiles, Groups, Messaging, Forum Discussions” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “BuddyPress & BuddyBoss Private Community with PMPro – Restrict Profiles, Groups, Messaging, Forum Discussions” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Change Log

1.4.1 – 2023-05-09

  • ENHANCEMENT: Support User Fields sync capability for XProfile fields. (@DarkLotus)
  • ENHANCEMENT: Improved logic around the [pmpro_account] shortcode filter to allow better adjustments with the ‘pmpro_buddypress_profile_account_shortcode’ filter. (@kimcoleman)
  • REFACTOR: Disabled the logic from update 1.3 to hide group meta. To hide the group meta please use CSS or call the functions directly in your custom plugin. (@andrewlimaza)
  • BUG FIX: Fixed some strings that weren’t translatable due to incorrect text domain. (@ipokkel)

1.4 – 2023-02-08

  • ENHANCEMENT: Added support for Multiple Memberships Per User. This merges the settings across all user’s levels and gives access to BuddyPress/BuddyBoss components.
  • ENHANCEMENT: Added support for Pay By Check (pending), Approvals and other Add Ons that may set the pmpro_hasMembershipLevel to false when granting access to content.
  • DEPRECATED: Deprecated functions: pmpro_bp_get_user_old_level_options, pmpro_bp_set_member_groups and pmpro_bp_set_member_types. Use pmpro_bp_groups_pmpro_after_all_membership_level_changes and pmpro_bp_member_types_pmpro_after_all_membership_level_changes instead.
  • BUG FIX: Only show the membership tab for your own profile and not while viewing other members.

1.3.1 – 2022-09-13

  • BUG FIX: Fixed an issue from v1.3 that was causing the member directory to constantly be locked in most cases.

1.3 – 2022-09-12

  • ENHANCEMENT: Added “Membership” menu tab to the “View Profile” BuddyPress page.
  • ENHANCEMENT: Removed “Public” or “Private” wording from the frontend when viewing groups when this feature requires a level.
  • ENHANCEMENT: Removed “Public” option from XProfile field settings as this is restricted in certain cases.
  • ENHANCEMENT: Improved restrictions for notifications page when BuddyPress settings are locked down (I.e. Group Notifications).
  • ENHANCEMENT: Redirect away from the BuddyPress directory if the user’s membership level doesn’t allow access to Groups.
  • ENHANCEMENT: Improved the BuddyPress Directory SQL into parts so that tweaking/customizing the filtering is easier. New filter added pmpro_bp_directory_sql_parts.
  • BUG FIX: Fixed an issue where the initial installation would not restrict BuddyPress. By default, on initial install all features of BuddyPress are restricted to non-members.
  • BUG FIX: Fixed an issue where the “Show Membership Level on Profiles” wasn’t working for BuddyBoss installs.

= 1.2.9 – 2022-06-21=
* BUG FIX: Fixes an issue where logged-in user’s could not access the levels page if BuddyPress registration is set as the registration page.

1.2.8 – 2022-05-05

  • BUG FIX: Fixes various issue with registration redirects. Improves handling incomplete setups for registration and tidied up logic around this code. (Thanks @ideadude)
  • BUG FIX: Fixes an issue where the xprofile fields were not syncing correctly. (Thanks @ipokkel)
  • BUG FIX: Fixes an issue with group invites not working on level change.

1.2.7 – 2022-03-31

  • ENHANCEMENT: Escape and localized strings to allow for translations and additional locales.
  • ENHANCEMENT: Now showing messages where settings also apply for BuddyBoss if the plugin is active.
  • BUG FIX: Fixes an issue where in some cases the $cancel_level wasn’t being passed through.
  • BUG FIX: Fixes a warning that the ‘id’ parameter is not set when visiting a group page.

1.2.6 – 2020-10-14

  • BUG FIX: Fixed issue where the create group and join group buttons were not being disabled for users who shouldn’t have had permission to create or join groups.

1.2.5 – 2020-04-06

  • BUG FIX: Fixed issue where users were redirected away from the profile page if all of BuddyPress was locked down.
  • BUG FIX: Fixed issues with adding users to groups.
  • BUG FIX: Fixed issues with removing users from invited groups if their level changed.
  • BUG FIX/ENHANCEMENT: Stopping redirect loops on the levels page in some cases.

1.2.4 – 2019-06-28

  • BUG FIX: Fixed issue where the WP profile was still being restricted from users without access to BP.
  • BUG FIX: Fixed issue where the ‘restrict all of BuddyPress’ setting wasn’t being applied correctly when levels were set to use non-member settings.

1.2.3

  • BUG FIX: Only getting members in directory if levels exist.
  • BUG FIX: Now locking down all of BuddyPress when a level’s settings are set to use non-member settings and BuddyPress is locked down for non-members.
  • BUG FIX: Fixed issue with admin menu link sometimes pointing to the wrong address.
  • BUG FIX: Hiding friend request and messaging buttons if user doesn’t have access.
  • BUG FIX: Fixed issue where all users were sometimes displayed as admins in Edit Groups screen.
  • BUG FIX: Non-members were being restricted incorrectly from BuddyPress modules.
  • ENHANCEMENT: Now using constants in place of numbers to make some of the settings in the code more readable.

1.2.2

  • BUG FIX: When locking down “all of BuddyPress”, no longer redirecting away from the BuddyPress registration page.

1.2.1

  • BUG FIX: Added check that BuddyPress is active before trying to update member types when levels change.
  • BUG FIX: Removed echo statement that was causing errors when syncing profile fields.
  • BUG FIX: Fixed warnings related to default options on level settings.
  • BUG FIX: Fixed issue where you couldn’t choose “use non-member settings” on the level settings.
  • BUG FIX: Now including members of hidden levels in the BuddyPress directory.
  • BUG FIX: Fixed issue where the Friends Requests page would show a list of all members instead of just friend requests.

1.2

  • ENHANCEMENT: Further integration with PMPro Approvals. If you have PMPro Approvals v1.1 or higher installed, users will have their groups and member types adjusted when they are approved, denied, or reset from the approvals table.

1.1.1

  • BUG FIX: Fixed issue where all users were hidden from the member directory even if you weren’t trying to lock down your directory.
  • BUG FIX: Fixed issues with BuddyPress Profile Search and related plugins.
  • BUG FIX: Changed how we are testing for PMPro and BuddyPress activation.

1.1

  • BUG FIX: Fixed fatal errors when PMPro or BuddyPress isn’t activated.
  • BUG FIX: Fixed bug where membership level changes were creatinig fatal errors if Groups was not active.
  • BUG FIX: Fixed bug where the members directory was not being filtered correctly.
  • BUG FIX: Fixed bug where logged in users were being redirected to the BuddyPress registration page even though logged in users can’t register.
  • ENHANCEMENT: Doublechecking pmpro_hasMembershipLevel so plugins like PMPro Approvals can still filter which levels are included when calculating restrictions.

1.0

  • Initial WP.org release.