Berita

Mengatur Halaman Web dan Menu dengan Framework Yii

12 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 Vibecode UTDI Raih Juara 1 Refactory Hackathon x UKDW 2025 dengan Inovasi Developer Portal
Tim Vibecode UTDI Raih Juara 1 Refactory Hackathon x UKDW 2025 dengan Inovasi Developer Portal

2 hari yang lalu

[Yogyakarta, 9 Desember 2025] - Universitas Teknologi Digital Indonesia (UTDI) kembali mencetak prestasi gemilang di tingkat nasional. Tim mahasiswa UTDI ...

Selengkapnya
UTDI Tingkatkan Kompetensi Dosen: Pelatihan Kurikulum Terbaru dari PT Metrodata Siapkan Lulusan Future-Ready
UTDI Tingkatkan Kompetensi Dosen: Pelatihan Kurikulum Terbaru dari PT Metrodata Siapkan Lulusan Future-Ready

3 hari yang lalu

[Yogyakarta, 8 Desember 2025] – Universitas Teknologi Digital Indonesia (UTDI) memperkuat relevansi kurikulum pendidikannya melalui inisiatif pelatihan intensif bagi dosen. Bekerja sama dengan ...

Selengkapnya
KABAR GEMBIRA! UTDI Resmi Meraih Akreditasi Institusi
KABAR GEMBIRA! UTDI Resmi Meraih Akreditasi Institusi "Baik Sekali"

3 hari yang lalu

Keluarga besar Universitas Teknologi Digital Indonesia (UTDI) menyambut dengan sukacita dan penuh rasa syukur atas capaian Akreditasi Institusi Perguruan Tinggi ...

Selengkapnya