Mengatur Halaman Web dan Menu dengan Framework Yii

Selasa, 27 Agustus 2013

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>

akhir matakuliahMenu.php

 

 

 

  1. ketika user menjalankan aplikasi web  manjalankan defultController site memanggil SiteController manjalankan actionIndex()
  2. actionIndex() memanggil file index.php berisi halaman depan dan judul aplikasi
  3. actionIndex() , majalankan properti layout dengan menggunkan column2,
  4.  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.
  5.  layout  colom2.phpmenampilkan  menu samping   dengan perintah $this->widget(‘AkademikMenu’),  memanggil AkademikMenu.php
  6. AkademikMenu.php manbagi ke sejumlah submenu lewat perintah

             <li><?php echo CHtml::link('Semester',
        array('tblSemester/index')); ?>

         </li>
 

Berita Lainnya

Showing 1-3 of 433 items.
Akakom IT FEST 2019: ...
Akakom IT FEST 2019: Be Smart with Having Fun Sabtu, 16 Maret 2019

STMIK Akakom Yogyakarta kembali menggelar acara IT FEST 2019 pada Sabtu (10/03/2019). Berbeda dari IT FEST 2016, acara IT FEST 2019 dimotori oleh Badan ... Selengkapnya

Pembekalan Calon Wisudawan/...
Pembekalan Calon Wisudawan/wati: Pembekalan Softskill Dalam Menghadapi Dunia Kerja Kamis, 14 Maret 2019

STMIK Akakom mengadakan kegiatan pembekalan calon wisudawan periode gasal (Maret) 2019. Tentunya ini diselenggarakan untuk calon wisudawan-wisudawati sebagai motivasi dan memberikan ... Selengkapnya

Sahril, Mahasiswa STMIK ...
Sahril, Mahasiswa STMIK Akakom, Lolos ke Singapore dalam Ajang National Bootcamp Indonesia Next 2018 Telkomsel Rabu, 20 Februari 2019

Sahril mahasiswa jurusan Teknik Informatika angkatan tahun ajaran 2016 kembali mengharumkan nama STMIK AKAKOM dengan mengikuti kegiatan National Bootcamp Indonesia Next 2018 ... Selengkapnya