首頁  >  文章  >  後端開發  >  PHP開發框架Yii Framework教學(29) Zii元件-Menu範例

PHP開發框架Yii Framework教學(29) Zii元件-Menu範例

黄舟
黄舟原創
2017-01-22 09:37:401352瀏覽

介紹完Yii資料庫介面外,從本篇開始介紹Zii元件,包括列表視圖ListView,表格視圖GridView,此外還包括一些基於 JQuery的UI元件,如AutoComplete,DataPicker, Button, Drag 和 Drop等。

本文介紹Menu選單用法,CMenu使用Html 清單顯示多層選單,Menu配置透過其屬性item來配置,每個選單項目包括三個主要屬性

visible 是否可見

active 目前選單項目是否選中,

items 子選單項目。

此外還包括以下屬性:

label: 可選,選單名稱,支援使用HTML標記.

url: 可選,點擊該選單轉的URL連結

template: 可選,選單模板

link

linkOptions:linkOptions: array, 可選,額外的HTML連結屬性

itemOptions: array, 可選,額外的顯示選單項目的HTML屬性。

submenuOptions: array, 可選,額外顯示子選單的HTML屬性.

一般可以把Menu定義在Layout佈局中,例如本例,修改protected/views/layout/main.php

$this->widget('zii.widgets.CMenu',array(
'items'=>array(
array('label'=>'Home',
'url'=>array('/site/index')),
array('label'=>'About',
'url'=>array('/site/page',
'view'=>'about')),
array('label'=>'Contact',
'url'=>array('/site/page',
'view'=>'contact')),
array('label'=>'Login',
'url'=>array('/site/login'),
'visible'=>false),
),
)); ?>

本例使用CViewAction來顯示幾個靜態頁面,靜態頁面的缺省目錄為當前Controller的View目錄下的pages子目錄,本例在pages目錄下創建了兩個靜態頁面about.php, contact.
要使用CViewAction來顯示靜態頁面,需要修改Controller的actions方法:

public function actions()
{
return array(
'page'=>array(
'class'=>'CViewAction',
)
);
}

此外如果要顯示選單的層次軌跡(breadcrumbs),可以使用Zii元件中的CBreadcrumbs元件,CBreadcrumbs一般配合CMenu使用

breadcrumbs)):?>
widget('zii.widgets.CBreadcrumbs', array(
'links'=>$this->breadcrumbs,
)); ?>

本例使用Yii缺省的CSS,顯示結果如下:

PHP開發框架Yii Framework教學(29) Zii元件-Menu範例

如果不使用CSS,顯示結果如下:

PHP開發框架Yii Framework教學(29) Zii元件-Menu範例

由此可見,需要同時使用CMenu組件來配合合適的CSS才能顯示漂亮的選單。


以上就是PHP開發框架Yii Framework教程(29) Zii組件-Menu範例的內容,更多相關內容請關注PHP中文網(www.php.cn)!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn