The really beautiful thing about this template system is that PHP can be used in the content file!
Home Page index.php code:
<?php
require_once('inc/xhtml-or-html.php');
$title = "";
$head = "";
$content = "";
$requested_page = $_GET['page'];
if ($requested_page == "") {
require('cnt/home.php');
}
else {
$path = 'cnt/' . $requested_page . '.php';
if (file_exists($path)) {
require($path);
}
else {
require("cnt/404.php");
}
}
?>
<head>
<title><?php echo $title; ?></title>
<?php echo $head; ?>
</head>
<body>
<div id="content">
<?php echo $content; ?>
</div>
</body>
</html>
Template File cnt/home.php code:
<?php
$title = "Simple PHP Template";
$head = <<<HEAD
<style type="text/css">
...
</style>
HEAD;
ob_start(); // start output buffer
require_once("home_cnt.php"); // content file
$content = ob_get_contents(); // assign buffer contents to variable
ob_end_clean(); // end buffer and remove buffer contents
?>
Content File cnt/home_cnt.php code:
The page title and content of this page were included from 'cnt/home.php'. <br /> <br /> The really beautiful thing about this template system is that <?php echo "PHP can be used in the content file!"; ?> <br /> <br /> Link to a page like this: <a href="?page=home">Home</a> <br /> <br /> index.php code: ... You get the point.