Pengaturan ../protected/layouts/main.php
dijalankan lewat file. ../protected/site/index.php.
<?php
/* @var $this SiteController */
$this->pageTitle=Yii::app()->name;?>
<h1>Selamat Datang <i>
<?php echo CHtml::encode(Yii::app()->name); ?></i></h1>
<h2>Sistem Menginformasikan</h2>
<ul>
<li>Mahasiswa</li>
<li>Nilai</li>
<li>Krs</li>
</ul>
untuk CHtml::encode(Yii::app()->name); adalah memanggil properti nama
Menu Manggunakan CMenu
Kelas CMenuuntuk menampilkan menu multi-level menggunakan daftar HTML bersarang
Untuk menambahkan pilihan pada menu dengan cera mengubah begian ./protected/views/layouts/main.php, bagian dibagian dalam tag
<div id="mainmenu"> seperti pada skrip berikut :
potongan file main.php
………………..
<div id="mainmenu">
<?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'=>'Pegawai', 'url'=>array(
'/tblPegawai/index')),
array('label'=>'Golongan', 'url'=>array(
'/tblGolongan/index')),
array('label'=>'Contact', 'url'=>array(
'/site/contact')),
array('label'=>'Login', 'url'=>array('/site/login'),
'visible'=>Yii::app()->user->isGuest),
array('label'=>'Logout ('.Yii::app()->user->name.')',
'url'=>array('/site/logout'),
'visible'=>!Yii::app()->user->isGuest)
),
)); ?>
</div><!-- mainmenu -->
potongan file main.php
Membuat Menu dengan CPortlet
Tampilan bagian halaman depan untuk menempatkan tata letak menu. Pada gambar
skrip actionIndex()
public function actionIndex()
{
if(Yii::app()->user->isGuest)
$this->redirect(array('login'));
else
{
$this->layout='column2';
$this->render('index');
}
}
akhir skrip actionIndex()
· Ubah file /layout/column2.php seperti pada skrip berikut :
file colum2.php
?php /* @var $this Controller */ ?>
<?php $this->beginContent('//layouts/main'); ?>
<div class="span-19">
<div id="content">
<?php echo $content; ?>
</div><!-- content -->
</div>
<div class="span-5 last">
<div id="sidebar">
<?php
$this->widget('MahasiswaMenu');
$this->widget('MatakuliahMenu');
?>
</div><!-- sidebar -->
</div>
<?php $this->endContent(); ?>
akhir file colum2.php
perintah $this->widget('MahasiswaMenu'); akan menjalankan ke components/MahasiwaMenu.php
buat file ../protected/components/MahasiwaMenu.php
file MahasiwaMenu.php
<?php
Yii::import('zii.widgets.CPortlet');
class MahasiswaMenu extends CPortlet
{
public $title='<<<< Mahasiswa >>>';
protected function renderContent()
{
$this->render('mahasiswaMenu');
}
}
?>
akhir file MahasiwaMenu.php
fungsi renderContent()
ekan merender ke mahasiswaMenu.php
dalam folder
../protected/components/views/mahasiwaMenu.php
awal mahasiswaMenu.php
<!-- mahasiswaMenu.php -->
<ul>
<li><?php echo CHtml::link('Daftar Mahasiswa', array('tblMhs/admin')); ?></li>
<li><?php echo CHtml::link('Tamba Data',array('tblMhs/create'));?></li>
<li><?php //echo CHtml::link('Pencarian',array('tblMhs/_search')); ?></li>
</li>
</ul>
akhir mahasiswaMenu.php
MatakuliahMenu.php
<?php
Yii::import('zii.widgets.CPortlet');
class MatakuliahMenu extends CPortlet
{
public $title='<<<< Matakulian >>>';
protected function renderContent()
{
$this->render('matakuliahMenu');
}
}
?>
akhir MatakuliahMenu.php
fungsi renderContent()
ekan merender ke mahasiwaMenu.php
dalam folder
../protected/components/views/mahasiwaMenu.php
matakuliahMenu.php
<!-- matakuliahMenu.php -->
<ul>
<li><?php echo CHtml::link('Daftar Matakuliah', array('tblMkuliah/admin')); ?></li>
<li><?php echo CHtml::link('Tamba Data',array('tblMkuliah/create')); ?></li>
</li>
</ul>
- ketika user menjalankan aplikasi web manjalankan defultController site memanggil SiteController manjalankan actionIndex()
- actionIndex() memanggil file index.php berisi halaman depan dan judul aplikasi
- actionIndex() , majalankan properti layout dengan menggunkan column2,
- layout colom2.php berisi tampilan halaman depan dengan menu pilihan, menu bagian atas, lewat peritah $this>beginContent('//layouts/main')yang akan memanggil file ./layout/main.php, berisi menu atas.
- layout colom2.phpmenampilkan menu samping dengan perintah $this->widget(‘AkademikMenu’), memanggil AkademikMenu.php
- AkademikMenu.php manbagi ke sejumlah submenu lewat perintah
<li><?php echo CHtml::link('Semester',
array('tblSemester/index')); ?>
</li>