- Seme Framework
- versi 4.0.3 (ID)
- Persyaratan
- Download & Install
- Pengaturan
- Tutorial
- Perutean URI
- Konstanta
- Variabel Global
- Model
- View
- Controller
- Library
- CLI (command line interface)
- Core
Halaman Notfound
Halaman not found merupakan halaman yang di desain untuk menangani fallback
ketika URL yang diminta tidak ada atau tidak ditemukan dalam app/controller
.
Pada tutorial kali ini kita akan membuat Halaman notfound dengan menggunakan tampilan materializeCSS.
Jadi, pastikan untuk menyelesaikan tutorial Pengenalan bagian 2 sebelum melanjutkan tutorial ini.
Sehingga pengaturan view, view component, beserta temanya sudah disetel dan berjalan dengan baik.
Membuat layout
Pertama-tama kita akan membuat layout khusus untuk notfound
.
Biasanya, halaman notfound ini memiliki struktur HTML yang berbeda dengan halaman lainnya, sehingga harus memiliki layout khusus.
Buat file baru di app/view/front/page/notfound.php
untuk layout notfound.
<!DOCTYPE html>
<html>
<?php $this->getThemeElement('page/html/head', $__forward) ?>
<body>
<div class="container">
<div class="row">
<div class="col s12">
<h1><small style="color: rgba(0,0,0,0.5);">Error 404</small> Notfound</h1>
<p>Oops, looks like this page doesn't exist</p>
<hr>
<h5>Back to <a href="<?=base_url()?>">Homepage</a></h5>
</div>
</div>
</div>
<!-- jQuery, Bootstrap.js, jQuery plugins and Custom JS code -->
<?php $this->getJsFooter(); ?>
<!-- Load and execute javascript code used only in this page -->
<script>
$(document).ready(function(e){
<?php $this->getJsReady(); ?>
});
<?php $this->getJsContent(); ?>
</script>
</body>
</html>
Menyesuaikan Controller Notfound
Setelah layoutnya selesai, tinggal penyesuaian di app/controller/notfound.php
.
<?php
/**
* Controller class for throw 404 response code
*
* @package SemeFramework
* @since SemeFramework 1.0
*
* @codeCoverageIgnore
*/
class NotFound extends SENE_Controller
{
public function __construct()
{
parent::__construct();
}
public function index()
{
$data = array();
header("HTTP/1.0 404 Not Found");
$this->setTheme('front');
$this->setTitle('Notfound - Error 404');
$this->loadLayout("notfound",$data);
$this->render();
}
}
Mencoba halaman notfound
Untuk mencoba halaman notfound, cukup ketikan sembarang URL setelah base_url-nya. Lihat contoh dibawah ini
http://localhost/seme_framework/asdasdasad