Nestable Shortcodes

First_matryoshka_museum_doll_openWhen working with conditional shortcodes it’s often useful to have a series of tests, one after another, where each test determines if the user is qualified to continue to the next test.

Due to a limitation in WordPress’s design, the built-in shortcode system is very fast but it does not know how to count levels of nesting, so it cannot match each opening tag with its correct closing tag. In order to cleanly support this feature while not sacrificing performance, we provide the ability to nest shortcodes by giving each nested group of shortcodes a unique name by adding a number to the end. You can think of this like a Russian Matryoshka doll.

Some basic rules of nesting shortcodes:

Not all shortcodes can be nested. Only conditional shortcodes are ever made to be nested. There is no reason to nest a non-conditional shortcode.

Not all shortcodes can be nested the same number of times. A few simple shortcodes which perform very simple test can only be nested a few times since their tests are very limited.

There is a limited number of times that any given shortcode can be nested.

To nest a shortcode simply add a number to the end of the shortcode name. Similarly for [else_ and closing shortcode markup, you would add the matching number as well.

Some examples:

[memb_is_logged_in]
	[memb_is_logged_in1]
		[memb_is_logged_in2]
		[else_memb_is_logged_in2]
		[/memb_is_logged_in2]
	[else_memb_is_logged_in1]
	[/memb_is_logged_in1]
[else_memb_is_logged_in]
[/memb_is_logged_in]
  • Was this Helpful?
  • YesNo
9 ways to add more value to your membership site

Table of Contents

Keep Reading

Force Cache Flush

WordPress uses a caching system to map SEO / human readable page links into WordPress’s native links. This process is called URL rewriting, and the cache is referred to as the URL Rewrite Cache. When using some plugins, this URL conversion cache can be come corrupted. The symptom of this is random 404 page errors for pages that actually exist.

Read More »

A Guide to Using Shortcodes

This article covers the various concepts around Memberium Shortcodes: Conditional Shortcodes, How to Nest Shortcodes, Troubleshooting Shortcodes, Local Variables, Capturing Your Output for Later, and Formatting Your Output.

Read More »

Password Reset Tag

This is the tag that is applied to users who use the WordPress password reset function This is experimental. This setting is optional. The default

Read More »

Want to get some fresh ideas on how you can improve your membership site or course?

Download our free ebook!

Book a Call

Welcome to Memberium!

We are very excited for you to be part of our family. 

We would love to answer any questions that you have!

Please choose the best time for you to get in a call with us. 

For Technical Support, you can contact us at https://keap.memberium.com/support/ or Email us at support@memberium.com.