Use the [pmpro_advanced_levels] shortcode to display your membership levels with the same layouts and options as the block. This page lists every shortcode attribute with its accepted values and default.

Shortcode Example

Add the shortcode to any page or post. With no attributes, it shows all levels that allow new signups in the Div layout. This example shows three levels in columns, highlights level 5, and changes the button text:

[pmpro_advanced_levels levels="1,5,7" layout="3col" highlight="5" checkout_button="Join Now"]

Each block setting has a matching attribute, so you can switch between the block and the shortcode without changing the result. The account_button attribute is only available in the shortcode. See Block Settings for the block equivalents.

Shortcode Attributes

AttributeAccepted ValuesDefaultDescription
account_buttonAny textYour LevelButton text shown to a member for a level they already have (and that is not expiring soon). The button links to the Membership Account page.
back_linktrue or falsetrueShow the “Return to Your Account” link for members or the “Return to Home” link for everyone else below the levels.
checkout_buttonAny textSelectButton text that links to checkout for the level.
compareComparison rowsNoneFeature rows for the compare_table layout. See Build a Membership Comparison Table.
descriptiontrue or falsetrueShow the level description.
discount_codeA discount codeNoneShow discounted pricing for each level the code is valid for and add the code to that level’s checkout link.
expirationtrue or falsetrueShow the level expiration. Levels with no expiration show “Membership never expires.”
highlightA single level IDNoneAdds the pmpro_level-highlight CSS class to this level so your theme can feature it.
layoutdiv, 2col, 3col, 4col, table, or compare_tabledivHow to display the levels. See Choose a Layout for Your Levels Page.
levelsComma-separated level IDsAll levelsThe levels to show, in the order listed. When empty, shows every level that allows new signups in the order set on Memberships > Settings > Levels. Levels with new signups disabled are never shown.
priceshort, full, or hideshortHow to display the level price. See Price Display Options.
renew_buttonAny textRenewButton text shown to a member whose level is expiring soon. The button links to checkout to renew.

For the true/false attributes, the values false, 0, and no turn the option off. Any other value turns it on. The price attribute also accepts false or 0 to hide the price.

Apply a Discount Code From the URL

If the shortcode or block doesn’t set a discount code, the Add On checks the page URL for a discount_code parameter. This lets you share a link to your levels page that shows discounted pricing, for example:

/membership-levels/?discount_code=SPRING

A discount code set in the shortcode or block always takes priority over the URL.

More Examples

Show two levels in a table without the price column:

[pmpro_advanced_levels levels="5,7" layout="table" price="hide"]

Show the full price text with a discount code applied, and hide the back link:

[pmpro_advanced_levels layout="2col" price="full" discount_code="SPRING" back_link="false"]

Change the text on all three button states:

[pmpro_advanced_levels layout="4col" checkout_button="Join Now" renew_button="Renew Now" account_button="Current Plan"]

Last updated on November 9, 2026


Was this article helpful?
YesNo