Berita

Mengatur Halaman Web dan Menu dengan Framework Yii

10 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

Universitas Teknologi Digital Indonesia (UTDI) Turut Mendukung Pagelaran Hadeging Kadipaten Pakualaman 2024
Universitas Teknologi Digital Indonesia (UTDI) Turut Mendukung Pagelaran Hadeging Kadipaten Pakualaman 2024

14 jam yang lalu

Rektor Universitas Teknologi Digital Indonesia (UTDI), Ibu Sri Redjeki, S.Si., M.Kom., Ph.D., beserta Wakil Rektor, Bapak Totok ...

Selengkapnya
Bupati Bantul Sambut Baik Training Legislatif Dewan Perwakilan Mahasiswa UTDI  Sebagai Proses Pembelajaran Kepemimpinan di Organisasi Kemahasiswaan
Bupati Bantul Sambut Baik Training Legislatif Dewan Perwakilan Mahasiswa UTDI Sebagai Proses Pembelajaran Kepemimpinan di Organisasi Kemahasiswaan

2 hari yang lalu

YOGYAKARTA (23/3/24). Dalam upaya meningkatkan pembelajaran kepemimpinan dan pemahaman mahasiswa tentang sistem pemerintahan, Dewan Perwakilan Mahasiswa Universitas Teknologi Digital Indonesia (DPM ...

Selengkapnya
Kerja Sama Antara UTDI dan PT STARLABS GLOBAL TEKNOLOGI
Kerja Sama Antara UTDI dan PT STARLABS GLOBAL TEKNOLOGI

2 hari yang lalu

YOGYAKARTA (23/3/2024) – Universitas Teknologi Digital Indonesia (UTDI) telah menambah kerjasama dengan mitra dari sektor industri keamanan jaringan melalui penandatanganan Memorandum of ...

Selengkapnya