PHPackages                             wernerkrauss/silverstripe-menumanager - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. wernerkrauss/silverstripe-menumanager

ActiveSilverstripe-vendormodule[Utility &amp; Helpers](/categories/utility)

wernerkrauss/silverstripe-menumanager
=====================================

A menu manager for Silverstripe CMS 6 using LinkField

032PHPCI failing

Since Jan 30Pushed 3w agoCompare

[ Source](https://github.com/wernerkrauss/silverstripe-menumanager)[ Packagist](https://packagist.org/packages/wernerkrauss/silverstripe-menumanager)[ RSS](/packages/wernerkrauss-silverstripe-menumanager/feed)WikiDiscussions main Synced today

READMEChangelogDependenciesVersions (2)Used By (0)

[![Latest Stable Version](https://camo.githubusercontent.com/8509a3ad27449681b66dd98c09f55e911413916de8df37a5f134e82b6cec9e00/687474703a2f2f706f7365722e707567782e6f72672f7765726e65726b72617573732f73696c7665727374726970652d6d656e756d616e616765722f76)](https://packagist.org/packages/wernerkrauss/silverstripe-menumanager)[![Total Downloads](https://camo.githubusercontent.com/006b65d1275587bb98dff227205fab22adf40fe0f903c30962b8b7b4516c38e6/687474703a2f2f706f7365722e707567782e6f72672f7765726e65726b72617573732f73696c7665727374726970652d6d656e756d616e616765722f646f776e6c6f616473)](https://packagist.org/packages/wernerkrauss/silverstripe-menumanager)[![Latest Unstable Version](https://camo.githubusercontent.com/c3de93f070e07031aed699df58d6d07e25e195758caa7baebc1ff7adf54d9e36/687474703a2f2f706f7365722e707567782e6f72672f7765726e65726b72617573732f73696c7665727374726970652d6d656e756d616e616765722f762f756e737461626c65)](https://packagist.org/packages/wernerkrauss/silverstripe-menumanager)[![License](https://camo.githubusercontent.com/52431cb2f2364047cabe05113e00483eeefaeafb6e7cfa03b1c853cd864e07a5/687474703a2f2f706f7365722e707567782e6f72672f7765726e65726b72617573732f73696c7665727374726970652d6d656e756d616e616765722f6c6963656e7365)](https://packagist.org/packages/wernerkrauss/silverstripe-menumanager)[![PHP Version Require](https://camo.githubusercontent.com/c004830b233181e8810a644ae08c218925f7e5fac1d9f385a5f9ad2fab45f6e3/687474703a2f2f706f7365722e707567782e6f72672f7765726e65726b72617573732f73696c7665727374726970652d6d656e756d616e616765722f726571756972652f706870)](https://packagist.org/packages/wernerkrauss/silverstripe-menumanager)

Silverstripe Menu Manager
=========================

[](#silverstripe-menu-manager)

A simple menu manager for Silverstripe CMS 6, using the `silverstripe/linkfield` module for managing links. It allows you to define menu sets (e.g., "Main Menu", "Footer Menu") in your configuration and manage their items in the CMS.

Features
--------

[](#features)

- Manage multiple menu sets.
- Nested menu items (if allowed).
- Uses `LinkField` for versatile link types (Internal, External, Email, Phone, File).
- Permission-based editing for each menu set.
- Subsite support (if `silverstripe/subsites` is installed).

Requirements
------------

[](#requirements)

- PHP ^8.4
- Silverstripe Framework ^6
- Silverstripe CMS ^6
- Silverstripe LinkField ^4
- GridField Extensions ^5

Installation
------------

[](#installation)

```
composer require wernerkrauss/silverstripe-menumanager
```

Configuration
-------------

[](#configuration)

You can define your menu sets in a YAML configuration file (e.g., `app/_config/menu.yml`).

```
---
Name: Site-menus
---
Netwerkstatt\Menumanager\Model\MenuSet:
  sets:
    main:
      title: 'Main Menu'
    footer:
      title: 'Footer Menu'
      allow_children: true
```

After adding or changing this configuration, make sure to run a `dev/build`. The module will automatically create or update the `MenuSet` records in the database.

Usage
-----

[](#usage)

### Template Helper

[](#template-helper)

The module provides a global template variable `MenuSet` to access links of a specific set by its slug.

```

                            {$Title}

                                            {$Title}

```

Note: In the context of `MenuSet('slug')`, you get a list of `LinkItem` objects.

### Built-in Template

[](#built-in-template)

You can also include the provided default template:

```

```

Permissions
-----------

[](#permissions)

For each menu set defined in the config, a specific permission is created (e.g., "Manage links within 'Footer Menu'"). This allows you to delegate menu management to specific CMS users or groups without giving them full access to all menus.

License
-------

[](#license)

This module is licensed under the BSD-3-Clause license.

Thanks to
---------

[](#thanks-to)

GorrieCoe for creating menu manager modules for previous Silverstripe versions.

Need Help?
----------

[](#need-help)

If you need some help with your Silverstripe project, feel free to [contact me](mailto:werner.krauss@netwerkstatt.at) ✉️.

See you at next [StripeCon](https://stripecon.eu) 👋

###  Health Score

24

—

LowBetter than 31% of packages

Maintenance62

Regular maintenance activity

Popularity10

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity14

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/ff3ee546a6d1b1092f1badf68523ba30f28dec7fce11254a8cb3aeb57c6202de?d=identicon)[wernerkrauss](/maintainers/wernerkrauss)

---

Top Contributors

[![wernerkrauss](https://avatars.githubusercontent.com/u/1043925?v=4)](https://github.com/wernerkrauss "wernerkrauss (5 commits)")

### Embed Badge

![Health badge](/badges/wernerkrauss-silverstripe-menumanager/health.svg)

```
[![Health](https://phpackages.com/badges/wernerkrauss-silverstripe-menumanager/health.svg)](https://phpackages.com/packages/wernerkrauss-silverstripe-menumanager)
```

###  Alternatives

[yiidoc/yii2-timeago

Timeago is a jQuery plugin that makes it easy to support automatically updating fuzzy timestamps. Forked from @rmm5t for Yii2 framework.

12108.0k5](/packages/yiidoc-yii2-timeago)[pure_mashiro/magento2-bundlejs

Advanced JavaScript Bundling

111.7k](/packages/pure-mashiro-magento2-bundlejs)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
