Subsite Default Roles Based on Membership Level
-
Hi,
I’m running WP multisite and currently the default role for all the subsite users is “Administrator” after checkout.I added the following code as mu-plugin with the hopes that it would identify the default role and change it based on the membership level:
function my_pmpro_after_change_membership_level($level_id, $user_id) { if($level_id == 1) { //New member of level #1 (Basic Annually) $wp_user_object = new WP_User($user_id); if(in_array("administrator", $wp_user_object->roles)) $wp_user_object->set_role('basic-annually'); } elseif ($level_id == 2) { // New member of level #2 (Basic Monthly) $wp_user_object = new WP_User($user_id); if(in_array("administrator", $wp_user_object->roles)) $wp_user_object->set_role('basic-monthly'); } elseif ($level_id == 3) { // New member of level #3 (Premium Annually) $wp_user_object = new WP_User($user_id); if(in_array("administrator", $wp_user_object->roles)) $wp_user_object->set_role('premium-annually'); } elseif ($level_id == 4) { // New member of level #4 (Premium Monthly) $wp_user_object = new WP_User($user_id); if(in_array("administrator", $wp_user_object->roles)) $wp_user_object->set_role('premium-monthly'); } elseif ($level_id == 5) { // New member of level #5 (Ultimate Annually) $wp_user_object = new WP_User($user_id); if(in_array("administrator", $wp_user_object->roles)) $wp_user_object->set_role('ultimate-annually'); } elseif ($level_id == 6) { // New member of level #6 (Ultimate Monthly) $wp_user_object = new WP_User($user_id); if(in_array("administrator", $wp_user_object->roles)) $wp_user_object->set_role('ultimate-monthly'); } }
However, this doesn’t seem to work on my subsites. It only seems to work on my main site. Any idea on how to make it work on my subsites?
Viewing 1 replies (of 1 total)
Viewing 1 replies (of 1 total)
- The topic ‘Subsite Default Roles Based on Membership Level’ is closed to new replies.