Domanda

Sto cercando di rendere solo una parte della configurazione del menu nella mia applicazione ZF2.Non riesco a trovare nulla su come farlo.

La mia configurazione è:

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',
        )
    )
);

Quindi ho i sottoinsiemi predefiniti e NUOVI.Ho bisogno di rendere solo il sottoinsieme "NUOVO" del mio menu.Come faccio?

È stato utile?

Soluzione

in qualche modulo.php o dove crei la tua navigazione, supponendo che la tua configurazione data sia memorizzata in $config e hai accesso al ServiceManager in $serviceManager

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

in una vista / layout

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

PS:in qualsiasi modulo.php puoi ottenere il serviceManager in questo modo:

public function onBootstrap(\Zend\EventManager\EventInterface $e)
{
    $application = $e->getApplication();
    $serviceManager = $application->getServiceManager();
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top