使用ZF2的动态页面痕迹实现

时间:2014-12-04 15:46:37

标签: zend-framework2 breadcrumbs

我想为属性页面动态呈现页面痕迹。它看起来应该是这样的:

Home > Country name > City name > Property name

使用属性ID从数据库中检索国家/地区,城市和媒体资源的名称。我对查询没有任何问题,但如何将值传递给视图?

以下是我的配置站点地图:它只返回Home>属性

 return [
         'navigation' => [
            'default' => [
               'home' => [
                'label' => 'Home',
                'route' => 'home-page',
                'pages' => [
                    'property-page' => [
                        'label' => 'Property',
                        'module' => 'application',
                        'controller' => 'Application\Controller\Property',
                        'route' => 'property-page',
                        'action' => 'index'
                      ],
                    ],
                 ],
               ],
             ],
            ];

1 个答案:

答案 0 :(得分:0)

您可以通过navigationservice config进行此操作。像这样:

'navigation' => function($sm) {
               $navigation = new \Zend\Navigation\Service\DefaultNavigationFactory;
               $navigation = $navigation->createService($sm);

                //add here other staff for the navigation

 }

然后,当您从数据库中获取项目时,您可以像这样更改navigation

$navigation = $this->getServiceLocator()->get('navigation'); //get the navigation
$page = $nav->findByLabel('country')->setLabel($country); //set country value as label

$country是国家/地区的获取值。

您可以看到此post和此one了解更多详情。

希望这有帮助!