Frage

Ich versuche, nur einen Teil der Menükonfiguration in meiner ZF2-Anwendung zu rendern.Ich kann nichts darüber finden, wie das geht.

Meine Konfiguration ist:

array(
    'default' => array(
        'dashbord' => array(
            'label' => 'Dashbord',
            'route' => 'nav',
        ),
        'settings' => array(
            'label' => 'Settings',
            'route' => 'nav',
            'pages' => array(
            'Api Settings' => array(
                'label'=>'NAV_API_SETTINGS',
                'route'=>'nav'
             ),
        ),
    ),
    'NEW' =>array(
        'dashboard' => array(
            'label' => 'dashboard',
            'route' => 'nav',
        )
    )
);

Also habe ich die Teilmengen default und NEW .Ich muss nur die Teilmenge "NEU" meines Menüs rendern.Wie mache ich das?

War es hilfreich?

Lösung

in einem Modul.php oder wo Sie Ihre Navigation erstellen, vorausgesetzt, Ihre angegebene Konfiguration ist gespeichert in $config und Sie haben Zugriff auf den ServiceManager in $serviceManager

$navigation = new \Zend\Navigation\Navigation($config['NEW']);
$serviceManager->setService('new_navigation', $navigation);

in einer Ansicht/Layout

<?php echo $this->navigation()->menu('new_navigation') ?>

PS:in jedem Modul.php können Sie den serviceManager so bekommen:

public function onBootstrap(\Zend\EventManager\EventInterface $e)
{
    $application = $e->getApplication();
    $serviceManager = $application->getServiceManager();
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top