What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
Anda dapat melakukan pengelompokan elaborasi dengan menyiapkan grup $cache_id. Ini dilakukan dengan memisahkan setiap sub-grup dengan bar vertikal | dalam nilai $cache_id. Anda bisas memiliki sebanyak-banyaknya sub-grup yang anda inginkan.
Anda bisa membayangkan grup cache seperti hirarki direktori. Sebagai contoh, grup cache 'a|b|c' bisa dibayangkan sebagai struktur direktori '/a/b/c/'.
clear_cache(null,'a|b|c') akan seperti menghapus file '/a/b/c/*'. clear_cache(null,'a|b') akan seperti menghapus file '/a/b/*'.
Jika anda menetapkan $compile_id seperti clear_cache(null,'a|b','foo') ini diperlakukan sebagai grup cache yang ditambahkan '/a/b/c/foo/'.
Jika anda menetapkan nama template seperti clear_cache('foo.tpl','a|b|c') maka Smarty akan mencoba untuk menghapus '/a/b/c/foo.tpl'.
Anda TIDAK BISA menghapus nama template yang ditetapkan di bawah multipel grup cache seperti '/a/b/*/foo.tpl', pengelompokan cache HANYA bekerja dari kiri-ke-kanan. Anda perlu mengelompokan template anda di bawah satu hirarki grup cache agar bisa membersihkannya sebagai sebuah grup.
Pengelompokan cache seharusnya tidak dibingungkan dengan hirarki direktori template anda, pengelompokan cache tidak mengetahui bagaiman template anda dibentuk. Maka sebagai contoh, jika anda mempunyai struktur template seperti themes/blue/index.tpl dan anda ingin bisa membersihkan seluruh file cache untuk tema "blue", anda perlu membuat struktur grup cache yang meniru struktur file template, seperti display('themes/blue/index.tpl','themes|blue'), lalu membersihkannya dengan clear_cache(null,'themes|blue').