Skip to content

Instantly share code, notes, and snippets.

@greathmaster
Last active November 24, 2015 16:05
Show Gist options
  • Select an option

  • Save greathmaster/d8353af3ee5e7c5daeb5 to your computer and use it in GitHub Desktop.

Select an option

Save greathmaster/d8353af3ee5e7c5daeb5 to your computer and use it in GitHub Desktop.
Show levels and allow checkout (renewal) for hidden levels if the user already has that level.
/*
Show levels which are hidden on the level page if the user already has that level.
*/
function my_pmpro_levels_array($levels)
{
$member_level = pmpro_getMembershipLevelForUser($current_user->ID);
$check = false;
foreach($levels as $level)
{
if($level->id == $member_level->ID)
{
$check = true;
break;
}
}
if($check || !$member_level)
{
$newlevels=$levels;
}
else
{
$newlevels = array_merge($levels, array($member_level));
}
return $newlevels;
}
add_filter("pmpro_levels_array", "my_pmpro_levels_array");
function my_pmpro_checkout_level($pmpro_level)
{
global $wpdb;
$pmpro_level = $wpdb->get_row("SELECT * FROM $wpdb->pmpro_membership_levels WHERE id = '" . esc_sql($_REQUEST['level']) . "' LIMIT 1");
return $pmpro_level;
}
add_filter("pmpro_checkout_level", "my_pmpro_checkout_level");
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment