내가 무엇을하는 것은 내 컨트롤러 (AdminController extends Controller
) 클래스에서 여러 "메뉴"기능을 가지고있다. 각각은 CMenu에 필요한 배열을 만들고, 내가 함수에 전달한 것을 기반으로 활성 배열을 설정합니다. 예를 들어 : 그것은 컨트롤러 나 액션 또는 URL 요청과 같은뿐만 아니라 활성 적절한 메뉴 항목을 설정하는 곳
protected function getAdminMenu($activeTitle) {
return array(
array('label'=>'Manage pages', 'url'=>array('/user/purchase'),'active'=>($activeTitle=='Manage pages')?true:false),
array('label'=>'Manage users', 'url'=>array('/user/index'),'active'=>($activeTitle=='Manage users')?true:false),
);
}
이 작업을 수행 할 수 있습니다. 이것은 단지 예일뿐입니다. 당신이 public $menu=array();
을 가지고
$this->menu=$this->getAdminMenu('Manage pages');
(이것은 가정 : 내가 함께 메뉴를 렌더링하려면 내보기에 그런
, "페이지 관리"활성, 내 컨트롤러 클래스에서 함수를 사용하여 내 레이아웃의 메뉴를 설정 .뿐만 아니라 당신의 컨트롤러에 선언하고, 이것이 어떻게 작동하는지 확인하기 위해 블로그의 예를 살펴 보겠습니다 :
$this->widget('zii.widgets.CMenu', array(
'items'=>$this->menu,
));
를) 나는 이것이 당신에게 방향을 제공합니다 희망
을!
Yii의 CMenu 위젯을 보았습니까? http://www.yiiframework.com/doc/api/1.1/CMenu – Lari13