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

UTDI Raih Peringkat Ketiga Kategori Kerja Sama Joint Resources pada Penghargaan LLDIKTI Wilayah V
UTDI Raih Peringkat Ketiga Kategori Kerja Sama Joint Resources pada Penghargaan LLDIKTI Wilayah V

3 hari yang lalu

[Yogyakarta, 2 Desember 2025] — Universitas Teknologi Digital Indonesia (UTDI) meraih prestasi membanggakan dengan menempati peringkat ketiga pada kategori Kerja Sama Joint ...

Selengkapnya
Kolaborasi Gemilang: Dosen UTDI dan Siswa SMK/MAK Raih Penghargaan di Ajang Internasional 2025
Kolaborasi Gemilang: Dosen UTDI dan Siswa SMK/MAK Raih Penghargaan di Ajang Internasional 2025

4 hari yang lalu

[Yogyakarta, 28 November 2025] – Universitas Teknologi Digital Indonesia (UTDI) kembali menunjukkan komitmennya dalam pengembangan talenta digital sejak dini. Kolaborasi inovatif antara dosen ...

Selengkapnya
Penandatanganan Perjanjian Kerja Sama dan IA Penelitian Bersama antara Universitas Esa Unggul dan UTDI
Penandatanganan Perjanjian Kerja Sama dan IA Penelitian Bersama antara Universitas Esa Unggul dan UTDI

11 hari yang lalu

[Yogyakarta, 25 November 2025] – Universitas Teknologi Digital Indonesia (UTDI) kembali memperkuat jaringannya di tingkat nasional dengan menandatangani Perjanjian Implementasi (Implementation Agreement atau ...

Selengkapnya