The BuddyPress Add On for Paid Memberships Pro allows you to assign BuddyPress “Member Types” by Membership Level. The code recipe below demonstrates how to create a “member type” in BuddyPress.

The Code Recipe

You can add additional member types in the my_pmpro_bbg_register_member_types () function, then repeat lines 29-33 to define additional level<->member type relationships.

Adding the recipe to your website

You can add this recipe to your site by creating a custom plugin or using the Code Snippets plugin available for free in the WordPress repository. Read this companion article for step-by-step directions on either method.

Assigning a Member Type by Membership Level

Follow the steps below to assign a Member Type (you must first install and configure the BuddyPress Add On for Paid Memberships Pro).

  1. Navigate to Memberships > Membership Levels.
  2. Select a level to edit or create a new level.
  3. Under “BuddyPress Member Types”, select the member types you would like to assign for members of this level.
    Assign BuddyPress Member Types by Membership Level with Paid Memberships Pro WordPress Plugin
  4. Save Settings.

Screenshot: BuddyPress User Profile with “Member Type” Selection


Comments (12)


In my site (WP with Buddy Press) I have 4 member types and I would like to have 2 levels for each member type (free and premium).
Level Free: members just registered in the site will have restricted access to some pages. The content restrictions will vary depending on the member type.
Level Premium: upgrade and full access to the site

Is it possible with PMPro?

Hi there,

Thanks for reaching out, by default Paid Memberships Pro allows you, the admin, to set up multiple membership levels. Each level can have its own price and with it, you can decide to restrict whatever content you would like, associated with the relevant levels. For more information on how to restrict content using Paid Memberships Pro, check out: and

Hope this helps!

hello if i want to change a membership level the price would be eactly the same its just level 2 would have more acess if i want to keep the billing date eactly the same do i change the level on billing date or what is an easier option?

and probably more importantly, how do I do this for more than one member type — say I want level 1 and level 2 to each have different member types?

You can set a different member type per level by tweaking this code. Note that the if/else statement setup sets a certain member type for level 1 and no member type for no-level/cancelling. If you add an “elseif” in there checking for level 2 you can have it set a different member type.

If you can’t code PHP or have access to a developer to help you, you can post to the member forums with info on all of your levels and member types and how they match up, and we’ll write up the code for you. Mention that I said that here in this comment.

Leave a Reply

For faster support related to issues on your specific site please open a ticket in our members support area.

Your email address will not be published. Required fields are marked *