Sistem Templating Twig Pada Slim Framework

26/03/2020    Ekky Ridyanto    64     Website

Tidak seperti framework yang lainnya slim tidak datang otomatis dengan sistem templatingnya. Salah satu sistem templating yang disarankan oleh slim adalah twig. dimana twig merupakan template engine untuk PHP yang sangat modern

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-01

Websitenya ada di https://twig.symfony.com/. Pada bagian ini kita akan melakukan instalasi melalui composer dengan mengetikkan perintah berikut

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-02

Saya sudah install diproject slimnya. Jadi pastikan di bagian composer.json setelah menjalankan perintah command tadi maka teman teman sudah bisa melihat nama package slim/twig-view

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-03

Twig view yang di gunakan saat ini versi 2.4 dan berikut ini documentasi dari laman twig https://github.com/slimphp/Twig-View/tree/2.x. Lanjut, dibagian dokumentasinya ada cara menggunakan templating twig. Intinya kita daftarkan dulu container dengan nama view dan menginject variabel $container

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-04

Yang perlu teman teman perhatikan sebelah kiri nama keynya sebelah kanan adalah function valuenya. Dimana di value function ini kita menginstance template twig. Silahkan teman teman copykan saja sesuai dengan dokumentasinya 

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-05

Link documentasinya ada di sini 

https://www.slimframework.com/docs/v3/features/templates.html

Parameter pertama adalah lokasi template twignya. Katakanlah kita letakkan template twignya di folder views yang di concat dengan __DIR__

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-06

Siapkan folder viewsnya

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-07

Lalu berikutnya parameter kedua dalam bentuk array untuk setting cachenya. Kita berikan nilai false saja. Untuk bagian tiga baris kode ini biarkan default seperti ini

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-08

Intinya dengan dua baris tersebut untuk mengatur base url agar lebih mudah mengakses halaman-halamannya dan pada akhirnya kita akan return $views 

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-09

Setelah kita buat container view maka kita sudah bisa menggunakannya. Untuk mengaksesnya $this->view disambung dengan metode render()

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-010

Ada dua parameter yang wajib diisi. Pertama hasil $responsenya yang kedua nama template twignya atau view yang ingin ditampilkan

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-011

Misalnya saya ingin menampilkan halaman home.twig. Untuk itu kita sediakan satu file dengan nama home.twig disimpan di folder views

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-012

dan ini adalah isi content untuk halaman homenya 

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-013

Maka pada saat halaman root diakses yaitu localhost/basic-slim kita melihat ada isi dari content home.twignya

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-014

Anggap saya sengaja memberikan kesalahan untuk nama filenya maka kita akan melihat notifikasi bahwa slim application error. Nah tentu bagus kalo kita sudah mendeplov aplikasinya errornya umum seperti ini tapi dalam masa development kita akan bingung dimana salahnya? Karena errornya sama sekali tidak menampilkan apa kesalahannya

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-015

Untuk itu di slim bila ingin menampilkan detail errornya kita bisa menuliskan pada saat inisiasi object slim/appnya. Bentuknya array yaitu pasangan key dan value. Keynya adalah settings lalu kita memberi tahu kalo kita mau displayErrorDetailnya diberi nilai true

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-016

Nah ini dia hasil error detailnya. Pesan kesalahannya adalah twig error loader artinya dia berusaha mencari template yang tidak tersedia

Sistem-Templating-Twig-Pada-Slim-Framework-26032020-EKI-017

Okey itu dia cara penggunaan container dalam menampilkan template twignya. Terima Kasih

Artikel, PHP, PHP Framework, Slim, Micro Framework

Cara Cepat Pintar Membuat Website, Tanpa Perlu Basic IT

Membuat website perusahaan, portal berita, blog, katalog online, dan e-commerce.

Learn More

Cara Cepat Pintar Membuat Website, Tanpa Perlu Basic IT

Membuat website perusahaan, portal berita, blog, katalog online, dan e-commerce.

Learn More