WPMU Membership2 plugin has an addon that you can use to assign extra capabilities to an user when he joins in a membership, and when the user left the membership the capabilities are withdrawn. But, the problem is, even it says “Assign role”, it doesn’t assign role to that users but just assign the capabilities of that role.
So, if you need members of certain role, you won’t get those members in the member list. Even, if you have other plugin that makes some operation based on role, won’t work here. Let’s find a solution.
The following snippet will allow you to set different role based on membership, you will need to know membership IDs though. In the following example, if ID is 1343, I want to assign those users “editor” role, “author” for 1345 and “administrator” for 1348. Take a look:
Now, if the user’s membership is deactivated or cancelled, we need to assign back “subscriber” role to that user. I have used same code for cancel and deactivation operation, you can assign different role if you want:
You can add those codes in your functions.php in the theme, if you think your theme wonâ€™t be changed. Otherwise mu-plugins is the best solution. To use mu-plugins, go to /wp-content/ and find the folder with name ‘mu-plugins’. If there is no folder in that name, then create a folder, name it ‘mu-plugins’, create a file inside that, give any name you like and paste the code in there. You don’t need to activate that plugin. Mu-plugins means must use plugins, so it will be activated automatically always. If you use mu-plugins then add a php start tag at the beginning of the code.