質問

ZF2アプリケーションでメニュー構成の一部のみをレンダリングしようとしています。私はこれを行う方法について何かを見つけることができません。

私の設定は:

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

だから私はサブセットdefaultとNEWを持っています。メニューのサブセット「新規」のみをレンダリングする必要があります。どのように私はこれを行うのですか?

役に立ちましたか?

解決

いくつかのモジュールで。phpまたは、指定された設定が保存されていると仮定して、ナビゲーションを作成する場所 $config そして、あなたはServiceManagerにアクセスすることができます $serviceManager

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

ビュー/レイアウトで

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

PS:任意のモジュールで。phpあなたはこのようなserviceManagerを得ることができます:

public function onBootstrap(\Zend\EventManager\EventInterface $e)
{
    $application = $e->getApplication();
    $serviceManager = $application->getServiceManager();
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top