Oro Documentation
Oro Documentation
  • USERS
  • DEVELOPERS
    • Backend Developer Guide
    • Frontend Developer Guide
    • Bundles Documentation
    • Community Guide
  • CLOUD
  • BLOG
  • ACADEMY
  • Home >
  • Developer Documentation >
  • Backend Developer Guide >
  • Configuration Reference >
  • YAML >
  • Navigation
  • Backend Developer Guide
    • Setup
      • System Requirements
        • Performance Optimization
        • MySQL Optimization
      • Development Environment
        • Environment Setup for Community Edition
        • Environment Setup for Enterprise Edition
        • Web Server Configuration
        • Healthcheck and Data Monitoring
      • Demo Environment
        • VM VirtualBox
        • AWS Cloud Platform
        • Vagrant Provision
      • Installation
      • Installation in Sub-Folder
      • Loading Demo Data
      • Launch
      • Upgrade
      • Reinstall
      • Protect Cookies
    • Application Architecture
      • Technology Stack
        • Database
        • Search Index
          • ORM Search Engine
          • Elasticsearch
        • Message Queue
      • Application Structure
      • Application Framework
        • Architecture Principles of Oro Applications
      • Application Customization
      • Differences to Common Symfony Applications
      • Custom Oro Application
    • Bundles and Extensions
      • Create a Bundle
      • Extend an Existing Bundle
      • Install Extension from the Oro Marketplace
      • Add an Extension to Oro Marketplace
    • Entities
      • Create Entities
      • Extend Entities
      • Configure Entities
      • CRUD Operations
      • Data Grids
        • Pass Request Parameters to the Grid
      • Protect Entities Using ACLs
      • Entity Activities
      • Entity Attachments
      • Customize CRUD Pages
      • Customize Data Grid
    • Entities Data Management
      • Fixtures and Demo Data
      • Reports & Segments
      • Search Index
        • Configuration
        • Console Commands
        • Query Builder
        • Best Practices
        • Troubleshooting
      • Workflows
        • Introduction
        • Configuration Reference
        • Elements
        • Basic Configuration
        • Transition Forms
        • Translation Wizard
        • Configuration Example
      • Operations (Actions)
        • Glossary
        • Buttons
        • Action Groups
        • Configuration Reference
        • Actions and Conditions
        • Console Commands
      • Processes
      • Data Audit
    • Security
      • Introduction to Security in Oro Applications
      • Access Levels and Ownership (Example)
    • Translation and Localization
      • Translation
      • Localization
    • Integrations
      • Create an Integration
      • Import and Export Entities
      • Extend Entities to Support Bulk Import and Export
      • Accelerate Import
    • Dashboards
    • Navigation
    • Emails
    • Message Queue
      • Message Queue Jobs
      • Consumer
        • Resetting Container
      • Security Context
      • Logging, Error Handling and Debugging
        • Writing Logs to ELK Stack
      • Testing
      • RabbitMQ (Enterprise Edition Only)
        • Command Lines
        • Divide Queue to Separate Queues
        • Configure RabbitMQ for Production
        • Backup and Restore
        • Troubleshooting
      • Supervisord
    • Cron
    • WebSocket Notifications
      • Websocket Recipes
        • Use Maintenance Mode Notifications in Oro Applications
        • Use Content Outdated Notifications in Oro Applications
        • Create a Topic and a Handler for Publishing and Subscribing
        • Publish Messages to Existing Topics
        • Use Authentication and Authorization in WebSocket Connections
      • WebSocket Connection Configuration
    • Scopes
    • Feature Toggle
    • Logging
    • System Configuration
    • Configuration Reference
      • Annotations
        • @Acl
        • @AclAncestor
        • @Config
        • @ConfigField
        • @TitleTemplate
      • YAML
        • Access Control Lists
        • Assets
        • Dashboards
        • Datagrids
        • Entity Configuration
        • Navigation
        • Placeholders
        • Require.JS
        • Search Index
        • System Configuration
        • Workflows
    • Extending OroCRM
      • Add OroCommerce Capabilities to an OroCRM Application
    • Extending OroCommerce
      • Payment Methods
      • Shipping Methods
    • Akeneo Integration
    • Automated Tests
      • Functional Tests
      • Behat Tests
    • API Developer Guide
      • Using Web Services API
        • WSSE Authentication
        • Simple Search API
        • Advanced Search API
      • Actions
      • CLI Commands
      • Configuration Extensions
      • Configuration Extras
      • Configuration Reference
      • Documenting API Resources
      • Forms and Validators Configuration
      • Headers
      • Filters
      • How to
      • Processors
      • Configure Stateless Security Firewalls
      • Testing REST Api
      • Request Type
      • CORS Configuration
      • Entity Aliases
Version:
3.1
  • 4.1
  • 4.2
  • 5.0 (latest)
  • 5.1-ALPHA.1
  • Contents
    • items
      • aclResourceId
      • attributes
      • childrenAttributes
      • extras
      • label
      • labelAttributes
      • route
      • translateDomain
      • translateParameters
      • showNonAuthorized
      • uri
    • templates
      • allow_safe_labels
      • ancestorClass
      • currentAsLink
      • currentClass
      • firstClass
      • lastClass
      • rootClass
      • template
    • tree
      • children
      • type

Navigation

Filename navigation.yml
Root Node menu_config
Sections
  • items
    • aclResourceId
    • attributes
    • childrenAttributes
    • extras
    • label
    • labelAttributes
    • route
    • translateDomain
    • translateParameters
    • showNonAuthorized
    • uri
  • templates
    • allow_safe_labels
    • ancestorClass
    • currentAsLink
    • currentClass
    • firstClass
    • lastClass
    • rootClass
    • template
  • tree
    • children
    • type

items

type: map

Each entry in the map is a new menu item. The keys are used to identify the items. The following options can be used to configure each menu item:

aclResourceId

type: string

This is the name of an ACL that a user must be granted access for to see the menu item (unless showNonAuthorized is enabled).

attributes

type: map

To customize the generated HTML, you can configure additional HTML attributes:

class (type: string)

A custom HTML class added to the item’s HTML element.

id (type: string)

The value of the element’s id attribute.

childrenAttributes

type: map

To customize the generated HTML, you can configure additional HTML attributes for the elements of a menu item’s children:

class (type: string)

A custom HTML class added to the item’s HTML element.

id (type: string)

The value of the element’s id attribute.

extras

type: map

Additional options that control the behavior and look-and-feel of the menu item:

description (type: string)

A human-readable description of the item.

icon (type: string)

The name of a Font Awesome Icon (OroPlatform uses the old 3.2.1 version of the Font Awesome Icons).

position (type: integer)

This option defines the position of the item if there are more than one item on the same level. Items with lower position values will be shown before items with higher values.

routes (type: sequence)

A list of route names or route name patterns for which the menu item will be marked as active (the item will be marked as active when one of the listed route names is equal to the current route or if one of the wildcards matches the name of the current route).

safe_label (type: boolean default: false)

If set to true and the menu template has the option allow_safe_labels enabled, the menu item’s label will not be escaped, but will be printed as is instead.

label

type: string

The visible label.

Tip

The label will be passed to the translator. This means that you can also use translation keys here.

labelAttributes

type: map

To customize the generated HTML, you can configure additional HTML attributes for the menu item’s label element:

class (type: string)

A custom HTML class added to the item’s HTML element.

id (type: string)

The value of the element’s id attribute.

route

type: string

The name of the route that is used to generate the URL.

translateDomain

type: string

The translation domain used to translate the menu item label. By default, the messages domain is used if you do not configure the domain explicitly.

translateParameters

type: map

A map of translation parameters passed to the translator’s trans() method when the label is translated.

showNonAuthorized

type: boolean default: false

If enabled, the menu item will be show even if the user is not authorized.

uri

type: string

Instead of linking to a certain route you can also hardcode URLs using the uri option. If you want the menu item to act as a placeholder (for example, to nest menu items), you can use # as a value for this option.

templates

type: map

For each menu item, a template is used to properly render the needed HTML. When you create your own menu or you want to entirely change the way menu items are rendered, you can define new templates using the following options of the templates key. The options are grouped by keys which are treated as identifiers for the templates.

allow_safe_labels

type: boolean default: false

If set to false, menu items can define raw HTML labels that will not be escaped in the template when the item’s safe_label extra key is set to true.

ancestorClass

type: string

An HTML class that will be added to all ancestor menu items of the active menu item.

currentAsLink

type: boolean default: true

If set to false, the currently active menu item cannot be clicked.

currentClass

type: string

The name of an HTML class that will be rendered for the active menu item.

firstClass

type: string

The HTML class that will be rendered for the first menu item of each level.

lastClass

type: string

The HTML class that will be rendered for the last menu item of each level.

rootClass

type: string

An HTML class that will be added to the HTML element of the menu’s root item.

template

type: string

The name of the Twig template to render the menu tree.

tree

type: map

This option hooks the items into existing menus. The keys are the names of existing menus. There is only one option available:

children

type: map

The keys of this map are the names of menu items as created using the items option. Specify ~ (null) as the value if the item does not have child items. Otherwise, you can use the children options as the value to create a nested map of child items.

type

type: string

The type option can be used to choose one of the defined templates to render the menu.

Caution

This option can only be used for the root item of a menu.

Oro Documentation
  • Oro inc
  • OroCommerce
  • OroMarketplace
  • OroCRM
  • OroPlatform
  • Partners
  • Services
  • Events
  • Terms & conditions
  • Privacy policy
  • Contributor license agreement

@2021 Oro, Inc. All Rights Reserved.

Back to top