关于breadcrumbs
1,给breadcrumbs加超链接
- $this->breadcrumbs=array(
- 'Message'=>array('message/index'),
- 'HelloWorld',
- );
$this->breadcrumbs=array( 'Message'=>array('message/index'), 'HelloWorld', );
2,给breadcrumbs修改首页为中文
我目前采用的是在config/main.php中设置为zh_ch,但还有另外一种解决办法,
- <?php
- $this->widget('zii.widgets.CBreadcrumbs', array(
- 'homeLink'=>CHtml::link('首页',Yii::app()->homeUrl),
- //这里可以修改HOME,变成中文
- 'links'=>$this->breadcrumbs,
- )); ?><!-- breadcrumbs -->
<?php $this->widget('zii.widgets.CBreadcrumbs', array( 'homeLink'=>CHtml::link('首页',Yii::app()->homeUrl), //这里可以修改HOME,变成中文 'links'=>$this->breadcrumbs, )); ?><!-- breadcrumbs -->
3,博客breadcrumbs使用
1,现在../components/controller.php中添加
- public $breadcrumbs=array();
public $breadcrumbs=array();
2,在再../views/layouts/main.php
- <?php if(isset($this->breadcrumbs)):?>
- <?php $this->widget('zii.widgets.CBreadcrumbs', array('links'=>$this->breadcrumbs,)); ?>
- <?php endif?>
<?php if(isset($this->breadcrumbs)):?> <?php $this->widget('zii.widgets.CBreadcrumbs', array('links'=>$this->breadcrumbs,)); ?> <?php endif?>
3,在具体页面中
- $this->breadcrumbs=array(
- 'xx列表'=>array('index'),
- $model->workerName,
- );
$this->breadcrumbs=array( 'xx列表'=>array('index'), $model->workerName, );
二、关于createUrl和CHtml::link参数设置的区别
前者将多个参数放进一个数组中,后者直接向后累计添加(不放进数组)
1,createUrl应用
- <a href="<?php echo $this->createUrl('news/view',array('id'=>$companyNew->id,'news_type'=>$companyNew->news_type)) ?>" title="<?php echo $companyNew->title ?>">
<a href="<?php echo $this->createUrl('news/view',array('id'=>$companyNew->id,'news_type'=>$companyNew->news_type)) ?>" title="<?php echo $companyNew->title ?>">
批注:在MVC中,可以使用$this->createUrl();在../components/xx.php中使用Yii::app()->createUrl();
2,CHtml::link应用
- <?php echo CHtml::link(CHtml::encode($data->title), array('view', 'id'=>$data->id,'news_type'=>$data->news_type)); ?>
- //例如:
- <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'));?>
- html输出是<a href="index.php?r=controller/action¶m1=value1">Link Text</a>
- //多参数
- <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1','param2'=>'value2'));?>
- html输出是<a href="index.php?r=controller/action¶m1=value1¶m2=value2">Link Text</a>
- //额外参数:
- <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'), array('target'=>'_blank'));?>
- html输出是<a target="_blank" href="index.php?r=controller/action¶m1=value1">Link Text</a>
- //绝对路径:
- <?php echo CHtml::link('Link Text', array('/controller/action'));?>
- //指定模块下的路径
- <?php echo CHtml::link('Link Text', array('/module-id/controller/action'));?>
- //无效链接:
- <?php echo CHtml::link('Link Text', array('href'=>'javascript:void(0)'));?>
- <a href="javascript:void(0)">Link Text</a>
<?php echo CHtml::link(CHtml::encode($data->title), array('view', 'id'=>$data->id,'news_type'=>$data->news_type)); ?> //例如: <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'));?> html输出是<a href="index.php?r=controller/action¶m1=value1">Link Text</a> //多参数 <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1','param2'=>'value2'));?> html输出是<a href="index.php?r=controller/action¶m1=value1¶m2=value2">Link Text</a> //额外参数: <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'), array('target'=>'_blank'));?> html输出是<a target="_blank" href="index.php?r=controller/action¶m1=value1">Link Text</a> //绝对路径: <?php echo CHtml::link('Link Text', array('/controller/action'));?> //指定模块下的路径 <?php echo CHtml::link('Link Text', array('/module-id/controller/action'));?> //无效链接: <?php echo CHtml::link('Link Text', array('href'=>'javascript:void(0)'));?> <a href="javascript:void(0)">Link Text</a>
三、CHtml::linkButton
<?php echo CHtml::linkButton('LinkName', array('submit'=>array('controller/action','param'=>'value1'), 'confirm'=>"Are you sure?",));?>