Description
Elmspur Cascade adds a cascading dropdown redirect block to the WordPress block editor. Visitors pick from one or more dependent dropdowns — for example Category Topic Page — and are redirected to the URL attached to their final choice. No form plugin or shortcode is required.
Each dropdown filters the next: choosing a value in one level determines the options available in the next. When the visitor reaches an item that has a URL, they are sent to it — either immediately, or after clicking a button you can label yourself.
Features
- Native block — works in posts, pages, the Site Editor, templates, template parts, and block widget areas. Compatible with FSE/block themes.
- Visual tree builder — point-and-click interface to add, edit, nest, and reorder dropdown items without touching JSON.
- Up to 5 levels of dependent dropdowns. Branches don’t have to reach the maximum; a 2-level branch redirects from level 2 and remaining dropdowns stay disabled.
- Redirect immediately on final selection, or show a button the visitor clicks to go.
- Open in a new tab option.
- Custom placeholder text for each level.
- Navigation block variant — a compact version that lives inside the core Navigation block, inline with your other menu links.
- Wide and full alignment support; inherits your theme’s button styles.
- No form builder required. No shortcodes. No build step.
Use cases
- Support sites: Product Issue Type Help article
- Multi-location businesses: Country City Location page
- Course sites: Subject Course Lesson
Companion add-on
A separate add-on, distributed from elmspur.com (not from WordPress.org), adds saved/reusable dropdown trees: define a tree once, link it to as many blocks as you like, and edits propagate site-wide. It is optional — this plugin is fully functional on its own.
The JSON format
An array of items. Each item has a “label” and either “children” (an array of more items) or a “url”.
[
{
“label”: “Category A”,
“children”: [
{
“label”: “Subcategory A1”,
“children”: [
{ “label”: “Page one”, “url”: “https://example.com/a/a1/one” },
{ “label”: “Page two”, “url”: “https://example.com/a/a1/two” }
]
}
]
}
]
Settings (block sidebar)
- Menu data — the JSON hierarchy (also editable via the visual tree builder).
- Redirect immediately on final selection — skip the Go button.
- Open in a new tab.
- Button label.
- Placeholder text for each level.
Screenshots


Blocks
This plugin provides 2 blocks.
- Cascading Redirect Dropdowns Dependent dropdowns: each selection filters the next level, and the final choice redirects the visitor.
- Cascading Dropdowns — Menu Item A compact cascading dropdown that lives inside the Navigation block, inline with your menu links.
Installation
- In wp-admin go to Plugins Add New Plugin and search for Elmspur Cascade — or download the zip and use Upload Plugin.
- Activate the plugin.
- Edit any post, page, or template and insert the Cascading Redirect Dropdowns block.
- Click Open menu builder in the block sidebar to build your dropdown tree, adding a URL to each item that should be a destination.
FAQ
-
Does this require a form plugin?
-
No. Elmspur Cascade is a standalone native block with no dependencies. Install and activate it, and the block is immediately available in the editor.
-
How many dropdown levels can I have?
-
Up to 5 cascade levels. Each branch only renders as many dropdowns as it actually uses — a 2-level branch redirects from level 2 and leaves remaining dropdowns disabled.
-
Does it work with my theme?
-
Yes. It’s a native WordPress block that inherits your theme’s styles. The Go button uses the core button element, so it picks up your theme’s button colors, typography, and border radius automatically.
-
Does it slow my site down?
-
No. The front-end script is small and dependency-free — no jQuery, no external requests. It uses
viewScriptin block.json, so it only loads on pages that actually contain the block. -
Can the final selection open in a new tab?
-
Yes. Toggle Open in a new tab in the block sidebar.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Elmspur Cascade – Dropdown Redirect” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Elmspur Cascade – Dropdown Redirect” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.4.0
- Cascade depth is no longer gated behind a license — menus can use up to 5 dependent levels for everyone, both in the visual builder and on the front end.
- Renamed to Elmspur Cascade – Dropdown Redirect.
- Readme: clarified feature descriptions.
1.3.1
- Security: URL values in dropdown trees are now sanitized server-side with esc_url_raw() before output; javascript: URIs and other non-safe schemes are also blocked client-side in view.js as defence-in-depth.
- Code: Removed an orphaned/unclosed comment block that was merging into the crd_tree_depth docblock.
- Block: Default example URLs in block.json replaced with example.com placeholders.
- Readme: Added FAQ section; installation instructions updated.
1.3.0
- Levels are now dynamic: the block renders one dropdown per level your menu actually uses (a 2-level menu shows 2 dropdowns).
- New crd_menu_data extensibility filter and a savedMenuId attribute.
- No changes required to existing blocks.
1.2.0
- New: “Cascading Dropdowns – Menu Item” companion block. Open the Navigation block in the Site Editor, click +, and insert it inline between your menu links. Compact styling sized to nav bars; auto-redirect on by default; stacks vertically inside the mobile menu overlay.
- Both blocks share the same tree builder, settings, and data format.
1.1.0
- New: point-and-click menu tree builder. Select the block and click “Open menu builder” (sidebar) or “Edit menu tree” (canvas). Add, edit, reorder, nest, and delete items without touching JSON.
- The JSON editor moved to a collapsed “Advanced (JSON)” panel. Data format is unchanged — blocks created with 1.0.0 work as-is.
1.0.0
- Initial release.