Smarty merupakan framework (saya bilangnya) untuk menggenerate template. Pada kebanyakan kasus developer enterprise atau web based developer,terkadang dipusingkan untuk memisahkan antara pekerjaan seorang designer dan programmer, kadang sulit deadline proyek yang menyulitkan keduanya untuk saling menunggu. Ada juga pengalaman yang pernah saya alami sendiri, mengcopy desain untuk setiap fitur ya...

Ngulik Smarty Template Engine

smarty-jaco

Smarty merupakan framework (saya bilangnya) untuk menggenerate template. Pada kebanyakan kasus developer enterprise atau web based developer,terkadang dipusingkan untuk memisahkan antara pekerjaan seorang designer dan programmer, kadang sulit deadline proyek yang menyulitkan keduanya untuk saling menunggu. Ada juga pengalaman yang pernah saya alami sendiri, mengcopy desain untuk setiap fitur yang ada pada website, cara ini terkadang cukup sulit juga ketika fitur dari website sudah berkembang banyak, saya harus melakukan copas dari fitur satu ke fitur lainnya (itu zaman saya jahiliyah) hehehe.

Smarty merupakan template engine php yang memudahkan kita untuk melakukan tempalting pada project kita.  Dalam templatingnya engine smarty menggunakan “tag2″ tersendiri untuk menggabungkan antara logic dan desain. Pada ngulik kali ini saya akan menuliskan contoh project menggunakan smarty untuk engine templatenya. Project sederhana ini memiliki 2 template berbeda untuk 2 modul berbeda. Pertama adalah template untuk home dan kedua template untuk member area. berikut contoh project merupakan smarty template engine:

  1. download smaty di sini
  2.  ekstrak smarty folder webserver, jika menggunakan XAMPP sebagai webserver ekstrak di htdocs, copykan folder “libs” ke project yang akan dibuat.
  3. misal project akan dibuat adalah “Smarty” copy kan libs smarty, buat folder 4 folder (templates,templates_c,cache dan config), folder ini akan digunakan oleh smarty.
  4. buat config untuk libs smarty, buat file “config_smarty.php”, masukkan configurasi berikut :
<?php
require('libs/Smarty.class.php');
$smarty = new Smarty();
$smarty->setTemplateDir('templates');
$smarty->setCompileDir('templates_c');
$smarty->setCacheDir('cache');
$smarty->setConfigDir('config');
?>
     5. buat template untuk home di folder template, buat file dengan “.tpl” untuk template home saya namakan “home.tpl”, isi dengan kode berikut:
<html>
  <head>
  <link rel="stylesheet" type="text/css" media="all" href="home_style.css" />
    <title>Smarty</title>
  </head>
  <body>
  <div class="wrapper">
  <div class="header">
  Template Home
  </div>
  <div class="content">
  Menu :
  <a href="contoh_template_member.php">template member</a>
  <a href="index.php">template Home</a>
  <br/>
      {$name}!
  </div>
  </div>
  </body>
</html>
template ini akan mendefinisikan “tag” yang berisi string(content) yang didefinisikan di logic program, tag dalam template home adalah {$name} berisi content yang didefinisikan di index.php 6. selanjutnya kita membuat logic untuk program di folder smarty/index.php, dalam pendefinisian logic program kita menggunakan method yang digunakan smarty, berikut contohnya :
<?php
include('config_smarty.php');
$smarty->assign('name', 'home'); //tag name yang didefinisikan di home.tpl
$smarty->display('home.tpl');
?>

“assign” merupakan salah satu method smarty untuk meassign tag string ke tempalte, display method untuk mendefinisikan template mana yang kita pakai. Dengan smarty kita lebih flexibel membuat framework kita sendiri dan dengan gaya pemograman kita sendiri. untuk method smarty lebih lengkapnya dapat dilihat di web smarty

referensi : smarty

contoh project : smarty_project

 



About Author

titan

Hi, saya senang dengan dunia Komputer, more information visit http://blackinkstudio.co


Comment & Discussions

  • asep saepulloh
    Kerennnn :D makasih tutorialnya cobain yah :D :D

    • titan

      ia sma2x, silahkan coba. tutorial dasarnya :D


  • koes (Guest)
    makasih gan, sangat bermanfaat

    yuk mampir ke toko jam tangan keren
    merpatistore.com

  • koes (Guest)
    makasih gan, sangat bermanfaat

    yuk mampir ke toko jam tangan keren
    http://merpatistore.com

  • Please LOGIN before if you want to give the comment.