Rumahweb's News, Article, and Tutorial of Web Development

Web Template Tanpa Table – PHP, JavaScript, dan CSS (Bagian 4)

Berikut ini adalah engine yang akan digunakan membaca file template, mengisinya dengan modul-modul dan menampilkan ke web browser.

engine.php

[php]
class Template {
var $html = “”;

function Template($fileTemplate) {
$namaFile = “$fileTemplate”;
$penunjukFile = fopen($namaFile, “r”);
$this->html = fread($penunjukFile, filesize($namaFile));
fclose($penunjukFile);
}

function isiVar($namaVar, $isiVar) {
$this->html = ereg_replace(“#$namaVar#”, $isiVar, $this->html);
}

function isiBlokKiri($modulnya = array()) {
$isiBlokTotal = “”;
foreach($modulnya as $kunci => $nilai) {
include_once(“kiri/$nilai.php”);
$isiBlokTotal .= $dt;
}
$this->html = ereg_replace(“#BLOCK_KIRI#”, $isiBlokTotal, $this->html);
}

function isiContent($modulenya) {
include_once(“content/$modulenya.php”);
$this->html = ereg_replace(“#CONTENT#”, $dt, $this->html);
}

function isiBlokKanan($modulnya = array()) {
$isiBlokTotal = “”;
foreach($modulnya as $kunci => $nilai) {
include_once(“kanan/$nilai.php”);
$isiBlokTotal .= $dt;
}
$this->html = ereg_replace(“#BLOCK_KANAN#”, $isiBlokTotal, $this->html);
}

function tampilkanContent() {
echo $this->html;
}
}
[/php]

index.php

[php]
error_reporting(“E_ERROR”);

include_once(“engine.php”);

$tpl = new Template(‘utama.htm’);

$content = $_REQUEST[‘content’];
if (empty($content)) {
$content = ‘home’;
}

$kiri = array(‘menu-vertikal’, ‘kotak-weblogin’);
$kanan = array(‘polling’, ‘shoutbox’);

$tpl->isiVar(‘JUDUL_WEBSITE’, ‘Website Buat Belajar Aja’);

$tpl->isiBlokKiri($kiri);
$tpl->isiContent($content);
$tpl->isiBlokKanan($kanan);

$tpl->tampilkanContent();
[/php]

Silakan di cek lagi susunan file dan direktori adalah sebagai berikut:

index.php
utama.htm
table.css
engine.php
kiri/menu-vertikal.php
kiri/kotak-weblogin.php
content/home.php
content/berita-terbaru.php
kanan/polling.php
kanan/shoutbox.php

Selamat mencoba!

Tinggalkan Komentar

1 comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Blog Competition