Uzun süredir Smarty kullanıyorum ve smarty'i keşfetmeden önce "ah ulan ne zorlanıyomuşum" demiştim kendi kendime. İlk bölümümüzde smarty'nin yararları ve smarty ile basit web sayfası yapmayı öğrenicez.
1-) Smarty'nin Yararları (Neden smarty kullanmalıyım)
  • HTML ve PHP dosyalarınız birbirinden ayrı olduğu için karma karışık kodlardan kurtulup düzenli bir kodlamaya geçebilirsiniz.
  • Sistemlerinize kolayca tema ve dil sistemi yapabilirsiniz.
  • Eğer bir tasarımcısınız varsa sadece html dosyaları üstünde çalışarak hata riskini azaltırsınız.
  • Kendine ait cache sistemi ile ayrı bir cache sistemi kodlamanıza gerek kalmaz.
  • Ayrıca ingilizce sitesinden daha fazla bilgi edinebilirsiniz. Smarty : Why Use Smarty
2-) Smarty'yi scriptlerimde nasıl kullanıcam?
  • Smarty'nin son sürümünü Smarty : Downloads bu adresten indiriniz.
  • ZIP dosyasını açtığınızda dosyaları görüyorsunuz. "libs/" klasörünü sitenizin istediğiniz bir dizinine kaydedin.
  • "templates, templates_c, cache, configs" adlarında 4 tane klasör oluşturunuz. Ben smarty/ klasörü altına oluşturdum. Daha sonra aşağıdaki php kodlarını sitenizin en üstüne yapıştırın. Böylece smarty'i çalıştırmış olucaz.
<?php
require('libs/Smarty.class.php');
$smarty = new Smarty();
$smarty->template_dir = '/smarty/templates';
$smarty->compile_dir = '/smarty/templates_c';
$smarty->cache_dir = '/smarty/cache';
$smarty->config_dir = '/smarty/configs';
?>
Şimdi geldik nasıl kullanıcamıza...
Klasör yapımıza bir göz atalım..
smarty/templates
smarty/templates_c
smarty/cache
smarty/configs
smarty/templates/index.html (genelde .tpl kullanılıyor ancak ben .html kullanırım tavsiyede ederim. )
index.php
Tema dosyalarınız templates/ klasöründe olmasına dikkat ediniz. Şimdi öncelikle "index.php" dosyamız şu şekilde olsun.
<?php
require('libs/Smarty.class.php');
$smarty = new Smarty();
$smarty->template_dir = '/smarty/templates';
$smarty->compile_dir = '/smarty/templates_c';
$smarty->cache_dir = '/smarty/cache';
$smarty->config_dir = '/smarty/configs';
$smarty->assign('merhaba_yazisi','Hoşgeldiniz! İlk Smarty denememiz');
$smarty->display('index.html');
?>
index.html sayfamız
<font color="green">{$merhaba_yazisi}</font>
Bu işlemler sonucu scriptimizi çalıştırırsak yeşil yazı ile "Hoşgeldiniz! İlk Smarty denememiz" yazısını görebilirsiniz.
$smarty->assign('deger','deger içeriği'); şeklinde php kodlarımız oldugu sayfada tanımlıyoruz.
$smarty->display('index.html'); burda html dosyamızı belirtiyoruz.
Makale tamamen bana ait olup R10 için yazılmıştır. Sorularınızı bu başlık altında cevaplayabilirim. Bölüm 2'i için takipde kalın =)