2012-11-15 51 views
5

我是新來的Zend Framework2和I'm尋求建議以下情況:ZF2 Breadcrumbs Helper - 如何將其呈現爲無序列表?

I'm使用ZF2 麪包屑助手建立在我的項目breadcrums和驗證碼:

//breadcrumbs.phtml 

echo $this->navigation('Navigation') 
     ->breadcrumbs() 
     ->setLinkLast(false)    // link last page 
     ->setMaxDepth(7)     // stop at level 7 
     ->setMinDepth(0)     // start at level 0 
     ->setSeparator(' »' . PHP_EOL); // separator with newline 

當呈現這個樣子的:

首頁»的Lorem Ipsum1»的Lorem Ipsum2»電流克拉姆

探索的源代碼:

<div id="breadcrumbs"> 
    <a href="/">Home</a> 
    » 
    <a href="/">Lorem Ipsum1</a> 
    » 
    <a href="/">Lorem Ipsum2</a> 
    » Current Crumb 
</div> 

所以,我的問題是:用麪包屑助手我怎麼可以得到下面的源代碼,以便能夠樣式麪包屑我想要的方式?

<div id="breadcrumbs"> 
    <ul id="breadcrumbs"> 
     <li><a href="">Home</a></li> 
     <li><a href="">Lorem Ipsum1</a></li> 
     <li><a href="">Lorem Ipsum2</a></li> 
     <li><a href="" class="current">Current Crumb</a></li> 
    </ul> 
</div> 

回答

0

我不知道這是否會幫助你,但進展情況應該是相似的,如:Here

更多信息:zf2 documentation渲染使用的局部視圖腳本

+0

I'm打印ZF2導航助手創建麪包屑。您發佈的示例與麪包屑是由ZF的前一個版本製作的方式有關嗎? – devanerd

+0

可能是stackoverflow鏈接,但文檔是關於zf2的。 –

8

您可以使用視圖面包屑幫手設置偏用:

<?php $partial = array('application/navigation/breadcrumbs.phtml', 'default') ?> 
<?php $this->navigation('navigation')->breadcrumbs()->setPartial($partial) ?> 
<?php echo $this->navigation('navigation')->breadcrumbs()->render() ?> 

然後你的部分會是這樣的東西(application/navigation/breadcrumbs一個.phtml):

<?php $container = $this->navigation()->breadcrumbs() ?> 
<?php /* @var $container \Zend\View\Helper\Navigation\Breadcrumbs */ ?> 
<?php $navigation = $container->getContainer() ?> 
<?php /* @var $navigation \Zend\Navigation\Navigation */ ?> 

<ul class="breadcrumb"> 
    <li><a href="<?php echo $this->url('soemroute') ?>">Home</a> <span class="divider">/</span></li> 
    <?php foreach($this->pages as $page): ?> 
     <?php /* @var $page \Zend\Navigation\Page\Mvc */ ?> 
     <?php if(! $page->isActive()): ?> 
      <li> 
       <a href="<?php echo $page->getHref() ?>"><?php echo $page->getLabel() ?></a> 
       <span class="divider">/</span> 
      </li> 
     <?php else: ?> 
      <li class="active"> 
       <?php if($container->getLinkLast()): ?><a href="<?php echo $page->getHref() ?>"><?php endif ?> 
       <?php echo $page->getLabel() ?> 
       <?php if($container->getLinkLast()): ?></a><?php endif ?> 
      </li> 
     <?php endif ?> 
    <?php endforeach ?> 
</ul> 
0

我只是在我的ZF2

breadcrumb.phtml

<?php 
if (count($this->pages) > 0) : 
?> 
<ol class="breadcrumb"> 
<?php 
for ($i = 0, $iend = count($this->pages); $i < $iend; $i++) : 
    $a=$this->pages[$i]; 
    $label = $this->translate($a->getLabel()); 
?> 
    <li <?php if ($i + 1 == $iend) : ?> class="active" <?php endif ?> > 
     <?php if ($i + 1 != $iend) : ?> 
      <a href="<?php echo $a->getHref(); ?>"><?php echo $label ?></a> 
     <?php else : ?> 
      <?php echo $label ?> 
     <?php endif ?> 
    </li> 
<?php endfor ?> 
</ol> 
<?php endif ?> 

創建一個Twitter的引導麪包屑和使用我的模板

<?php echo $this->navigation()->breadcrumbs('Navigation')->setPartial('partial/breadcrumb.phtml'); ?>