Zend framework2 具有动态内容的ZF2面包屑

Zend framework2 具有动态内容的ZF2面包屑,zend-framework2,zend-navigation,Zend Framework2,Zend Navigation,如何使用Zend Navigation和breadcrumbs view helper在ZF2中创建具有动态内容的面包屑?例如: 家->人->无名氏 在本例中,John Doe是您当前查看的配置文件页面,其中加载了一个uri,如/people/23424,其中最后一个参数是可能有数千人的人的id 考虑到所有导航页面都是在服务配置中创建的,我如何做到这一点呢?您可以使用会话并将面包屑存储在那里。不过,你可能想把自己限制在10页以内 您可以利用会话将面包屑存储在那里。不过,你可能想把自己限制在10页

如何使用Zend Navigation和breadcrumbs view helper在ZF2中创建具有动态内容的面包屑?例如:

家->人->无名氏

在本例中,John Doe是您当前查看的配置文件页面,其中加载了一个uri,如/people/23424,其中最后一个参数是可能有数千人的人的id


考虑到所有导航页面都是在服务配置中创建的,我如何做到这一点呢?

您可以使用会话并将面包屑存储在那里。不过,你可能想把自己限制在10页以内

您可以利用会话将面包屑存储在那里。不过,你可能想把自己限制在10页以内

将导航添加到您的服务配置中:

'navigation' => function($sm) {
    $navigation = new \Zend\Navigation\Service\DefaultNavigationFactory;
    $navigation = $navigation->createService($sm);
    /**
     * Do extra work here with the nav at instantiate time..
     */ 
 },
或者更简单地说:

'navigation' => 'Zend\Navigation\Service\DefaultNavigationFactory'
现在,您可以获取要更改的项目,如下所示:

$nav = $this->getServiceLocator()->get('navigation');
$page = $nav->findByLabel('My Label');
$page->setLabel('New Label');

将导航添加到您的服务配置:

'navigation' => function($sm) {
    $navigation = new \Zend\Navigation\Service\DefaultNavigationFactory;
    $navigation = $navigation->createService($sm);
    /**
     * Do extra work here with the nav at instantiate time..
     */ 
 },
或者更简单地说:

'navigation' => 'Zend\Navigation\Service\DefaultNavigationFactory'
现在,您可以获取要更改的项目,如下所示:

$nav = $this->getServiceLocator()->get('navigation');
$page = $nav->findByLabel('My Label');
$page->setLabel('New Label');