thewebmen/silverstripe-menustructure

This package is abandoned and no longer maintained. The author suggests using the https://github.com/wedevelopnl/silverstripe-menustructure package instead.
There is no license information available for the latest version (6.0.0-rc.1) of this package.

Silverstripe module to create nested menus

Maintainers

Package info

github.com/wedevelopnl/silverstripe-menustructure

Type:silverstripe-vendormodule

pkg:composer/thewebmen/silverstripe-menustructure

Transparency log

Statistics

Installs: 14 607

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 2


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 / $ViewableMenustructureMenu helpers, custom templates, link types, active-link styling
  • Configurationprotected_menus, enable_query_string, enable_page_anchor, permission codes

Architecture

  • Data modelMenu / MenuItem / LinkType enum, 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.

Maintainers

WeDevelopdevelopment@wedevelop.nl