I was recently asked how a site could customize their membership levels page to show different levels to the visitor and the logged-in member (for “upgrade” levels). This is useful if you have a specific upgrade path, be it for courses, a unique step-by-step program or other “tiered” access that you want to control the flow for.
This can be easily accomplished using the built-in [membership] shortcode alongside our Advanced Levels Page Shortcode Add On.
How to Do it: Demo
[membership level="0"] <!--this is shown to non-members and non-logged in visitors--> [pmpro_advanced_levels levels="1,2,3" layout="3col"] [/membership] [membership level="1,2"] [pmpro_advanced_levels levels="2,3" layout="2col"] <!--this is shown to Level 1 and 2 Members--> [/membership] [membership level="3"] [pmpro_advanced_levels levels="4"] <!--this is shown to Level 3 Members--> [/membership]
It may also be smart to add a link to your login page above or below the levels shortcode, something along the lines of:
[membership level="0"] <!--this is shown to non-members and non-logged in visitors--> <div class="pmpro_message pmpro_alert"> Already a member? Log In to unlock additional membership options. </div> [/membership]
- Setting up the site in this method will not put the checks in place to require a level in order to check out for another level (i.e. if you have to purchase Level 1 in order to upgrade to Level 2). Checkout the code recipe below for a tutorial to put that registration check in place.
- Don’t check the box to “Disable Signups” for the levels on the Memberships > Levels > Edit Level page. This totally blocks the level for public registrations (as well as display on a page using the [pmpro_levels] or [pmpro_advanced_levels] shortcodes).