Ho pubblicato su Github dei veloci appunti sul menu di Magento2.
Come quello di Magento1, il menù di Magento2 non ha il markup all'interno del template, quindi anche solo per fare piccole modifiche è necessario estendere la classe. Nel repository c'è il codice per fare due operazioni:
- Estendere la classe \Magento\Theme\Block\Html\Topmenu Class (in questo esempio è stato aggiunto un blocco statico all'interno del menu dropdown, utile per chi vuole costruire un megamenu)
- Creare un Observer sull'evento che genera il menu per aggiungere una nuova voce (Ma su questo in rete ci sono altri esempi più autorevoli) e per ricavare dei dati sulle voci di menu.