thewebmen / silverstripe-menustructure
Silverstripe module to create nested menus
Package info
github.com/wedevelopnl/silverstripe-menustructure
Type:silverstripe-vendormodule
pkg:composer/thewebmen/silverstripe-menustructure
Requires
- php: ^8.3
- silverstripe/admin: ^3.0
- silverstripe/cms: ^6.0
- silverstripe/framework: ^6.0
- symbiote/silverstripe-gridfieldextensions: ^5.0
- unclecheese/display-logic: ^4.0
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
- 6.x-dev
- 6.0.0-rc.1
- dev-main / 4.x-dev
- 4.0.2
- 4.0.1
- 4.0.0
- v3.x-dev
- 3.0.2
- 3.0.1
- 3.0.0
- v2.0.2
- v2.0.1
- 2.0.0
- 1.1.0
- 1.0.11
- 1.0.10
- 1.0.9
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-fix/declare-license-in-composer-json
- dev-feature/nullable-link-2
- dev-feature/nullable-link
- dev-feature/KB-51-migration-task-namespaces
- dev-fix/account-for-non-existent-file
- dev-feature/ss-5
- dev-feature/menu-relationeditor
- dev-feature/added-docker-csfixer-etc
This package is auto-updated.
Last update: 2026-08-04 02:54:01 UTC
README
A SilverStripe CMS module for editor-managed multi-menu navigation — define multiple named menus in the CMS, nest them arbitrarily deep, and render them in templates by slug.
Requirements
- PHP ^8.3
- silverstripe/framework ^6.0, silverstripe/cms ^6.0, silverstripe/admin ^3.0
- unclecheese/display-logic ^4.0, symbiote/silverstripe-gridfieldextensions ^5.0
Installation
composer require wedevelopnl/silverstripe-menustructure
Then run dev/build?flush=1 to pick up the new database schema.
Usage
Create a menu in the CMS under Menus, give it a slug, and render it in any template:
$MenustructureMenu('main-menu')
That uses the bundled Menu.ss template. To render with your own markup:
$ViewableMenustructureMenu('main-menu', 'Includes/PrimaryNavigation')
See Template integration for the full rendering contract — link types, active-link styling, nesting, and the bundled markup.
Documentation
Usage guides
- Template integration —
$MenustructureMenu/$ViewableMenustructureMenuhelpers, custom templates, link types, active-link styling - Configuration —
protected_menus,enable_query_string,enable_page_anchor, permission codes
Architecture
- Data model —
Menu/MenuItem/LinkTypeenum, cascade behaviour, extension hooks
Contributing
- Contributing guide — dev environment, test/coverage/QA commands, pull-request conventions
Changelog
See CHANGELOG.md for release history.
License
See LICENSE.