如果您使用的是最新版本的Yii (1.1.11),那么你有几个新选项CBreadcrumbs,即:activeLinkTemplate
和inactiveLinkTemplate
和使用这些(也tagName
)就可以轻松实现您的要求。
你只需要添加值这些选项,你在哪里,包括面包屑插件的文件中,默认情况下,它是在一个布局文件:保护/视图/布局/ main.php,像这样:
<?php if(isset($this->breadcrumbs)):?>
<?php $this->widget('zii.widgets.CBreadcrumbs', array(
'links'=>$this->breadcrumbs,
'tagName'=>'ul', // will change the container to ul
'activeLinkTemplate'=>'<li><a href="{url}">{label}</a></li>', // will generate the clickable breadcrumb links
'inactiveLinkTemplate'=>'<li>{label}</li>', // will generate the current page url : <li>News</li>
'homeLink'=>'<li><a href="'.Yii::app()->homeUrl.'">Home</a></li>' // will generate your homeurl item : <li><a href="/dr/dr/public_html/">Home</a></li>
)); ?><!-- breadcrumbs -->
<?php endif?>
'activeLinkTemplate'
生成链接主动/可点击的链接,并且生成'inactiveLinkTemplate'
当前的URL,其无法点击并且没有URL。
{url}
和{label}
是URL和标签由每个视图的面包屑对象提供值。如: -
// in some view.php file, you'll see this
$this->breadcrumbs=array(// array is label=>url
'Label1'=>array('route1'),
'Label2'=>array('route2'),
'Label3',
);
如果您正在使用的版本1.1.11之前,那么你就必须extend
的CBreadcrumbs类和修改run()
方法输出面包屑,封闭在<li>
。一旦你看到现有的run()
方法,你会很清楚如何去做。
编辑:
错过了如何添加CSS类。你可以通过在这个widget的htmlOptions数组中添加一个class key-value:
<?php $this->widget('zii.widgets.CBreadcrumbs', array(
'links'=>$this->breadcrumbs,
'tagName'=>'ul', // will change the container to ul
'htmlOptions'=>array('class'=>'menu'),
// ... rest of the code ...
)); ?><!-- breadcrumbs -->
yii你正在使用哪个版本? – 2012-08-09 16:03:45
最新版本。 – 2012-08-10 06:17:18