You are viewing beta documentation for Navigation 4.x.
Reference

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

PropertyDescription
idMenu ID
nameDisplay name
handleHandle (used in Twig/GraphQL)
instructionsCP instructions
maxLevelsMaximum nesting depth
maxNodesMaximum total nodes
propagationMethodMultisite propagation for nodes
titleTranslationMethodHow node titles propagate across sites (none, site, siteGroup, language, custom)
titleTranslationKeyFormatCustom translation key template when titleTranslationMethod is custom
defaultEnabledForPropagatedSitesDefault Enabled On Other Sites By Default value for new nodes when propagation is not none
structureIdCraft structure ID for the node tree
fieldLayoutIdNode custom field layout

For menu-level field values, use craft.navigation.menu('handle').one().