PHP ile Basit Template Sistemi

Daha önce PHP Template Teorisi yazımda template sistemleri hakkında ufak bir teorik bilgi vermiştim. Fakat orada verdiğim örnek sayfaları ve bölümleri birbirinden ayırmaktı. Şu an size göstereceğim örnek ise tasarım ve kodlamanın ayrı dosyalarda yapılmasını sağlamak.

Tabiki bu sadece mantığını kavramanız için çok basit birşey. Ama yinede kolaylık bakımından basit işlerinizde kullanabilirsiniz. Yaptığımız sistemde include edeceğimiz bir php dosyası birde html kodlarının yani tasarımın olacağı .tpl dosyası olacak. İlk önce kodlarımızı yazıp daha sonra tasarım dosyası olan .tpl dosyamızı oluşturalım. En son olarak anasayfamıza include edip kullanalım.

İlk önce template.php adında kodlarımızın olduğu dosyayı oluşturuyoruz.

<?php

$baslik    = "Site Başlığı";

$mesaj     = "Sitemize Hoşgeldiniz";

$slogan    = "Hebele Hubele";

$kopirayt  = "© Bu Site Haksızdır";

ob_start();

include("template.tpl");

$html = ob_get_contents();

ob_end_clean();

echo $html;

?>

Daha sonra template.tpl adında tasarım dosyamızı oluşturuyoruz.

<html>

<head>

<title><?=$baslik?></title>

</head>

<body>

<h1><?=$mesaj?></h1>

<h3><?=$slogan?></h3>

<hr>

<?=$kopirayt?>

</body>

</html>

En son sitemizi göstereceğimiz index.php dosyamızı oluşturuyoruz.

<?php

include("template.php");

?>

Tabiki sadece include ederek. Herhangi başka birşey yapmaya gerek yok. Tabi bunları bölümlere ayırarak header & footer olarakta yapabilirsiniz. Hayal gücünüzü kullanın.

Uygulama dosyasını buradan indirebilirsiniz.

13 thoughts on “PHP ile Basit Template Sistemi


  1. Geçen gün php ile ilgili if else ve include ile calisan bir template ornegi vardi, neden kaldırdınız?


  2. Allah (c.c) verdiğiniz tüm bilgilerden ötürü sizden razı olsun. Çok teşekkürler….


  3. tpl dosyasında

     <?= ........?>

    satırları ekrana bilgi yazdırmıyor yazıldığı gibi görünüyoe ekranda? Bu sorun neden kaynaklanıyor acaba?


  4. .tpl ile site yapmanın avantajları nelerdir yani ben mesela tema sistemini php olarak kodluyorum yani en basit düzeyde kodluyorum ama .tpl in bana kazandıracağı ne olablir bundan?


  5. Paylaşım için teşekkürler ama bunun yanı sıra smarty vb template parser sistemleri kullanılabilir 🙂

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir