Menu Settings
A MenuSettings object represents menu configuration from project config — limits, propagation, permissions, and field layouts — rather than field values saved on the menu. Templates rarely need this object; use the Menu element for custom field values.
Access
$menuSettings = \verbb\navigation\Navigation::$plugin->getMenus()->getMenuByHandle('mainMenu');MenuSettings is a PHP-only API. In Twig, use craft.navigation.menu('handle').one() for menu field values.
Properties
Type: int|null
Menu ID
Type: string|null
Display name
Type: string|null
Handle (used in Twig/GraphQL)
Type: string|null
CP instructions
Type: int|null
Maximum nesting depth
Type: int|null
Maximum total nodes
Type: string
Multisite propagation for nodes
Type: string
How node titles propagate across sites (none, site, siteGroup, language, custom)
Type: string|null
Custom translation key template when titleTranslationMethod is custom
Type: bool
Default Enabled On Other Sites By Default value for new nodes when propagation is not none
Type: int|null
Craft structure ID for the node tree
Type: int|null
Node custom field layout
For menu-level field values, use craft.navigation.menu('handle').one().