Berita

Mengatur Halaman Web dan Menu dengan Framework Yii

11 tahun yang lalu

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

Tim MAW ALWAYS Raih Juara 1 Kompetisi Simulasi Bisnis 2024 di Jakarta
Tim MAW ALWAYS Raih Juara 1 Kompetisi Simulasi Bisnis 2024 di Jakarta

9 hari yang lalu

[Jakarta, 18 Desember 2024] — Universitas Teknologi Digital Indonesia (UTDI) kembali mencatatkan prestasi gemilang di tingkat nasional. Tim MAW ALWAYS berhasil meraih Juara 1 ...

Selengkapnya
Education Malaysia Indonesia Dorong Kolaborasi Kampus di DIY dan Malaysia Melalui Session Sharing Bersama Atase Pendidikan
Education Malaysia Indonesia Dorong Kolaborasi Kampus di DIY dan Malaysia Melalui Session Sharing Bersama Atase Pendidikan

satu bulan yang lalu

[Yogyakarta, 13 Desember 2024] — Education Malaysia Indonesia (EMI) kembali mengukuhkan komitmennya dalam mendukung peningkatan kerja sama akademik antara Indonesia dan Malaysia. Dalam ...

Selengkapnya
UTDI Sukses Gelar Seminar Internasional ISRITI 2024
UTDI Sukses Gelar Seminar Internasional ISRITI 2024

satu bulan yang lalu

[Yogyakarta, 11 Desember 2024] Universitas Teknologi Digital Indonesia (UTDI) kembali mengukuhkan perannya di dunia teknologi dengan menyelenggarakan International Seminar on Research of ...

Selengkapnya