Bab 16. Extending Smarty With Plugins
Version 2.0 introduced the plugin architecture that is used for almost all the customizable functionality of Smarty. This includes:
- functions
- modifiers
- block functions
- compiler functions
- prefilters
- postfilters
- outputfilters
- resources
- inserts
Bagaimana Plugin Bekerja
Plugin selalu diambil saat dibutuhkan. Hanya pengubah tertentu, fungsi, sumber daya, dll yang diminta dalam naskah template akan diambil. Selanjutnya, setiap plugin diambil hanya sekali, meskipun anda mempunyai beberapa turunan Smarty yang berjalan dalam permintaan yang sama.
Pre/postfilters dan filter output sedikit dari hal khusus. Karena tidak disetbutkan dalam template, ini harus didaftarkan atau diambil secara eksplisit melalui fungis API sebelum template diproses. Urutan di mana multipel filter dengan tipe sama dijalankan tergantung pada urutan di mana ia didaftarkan atau diambil.
Direktori plugin dapat berupa string yang berisi path atau array yang berisi multipel path. Untuk menginstalasi sebuah plugin, cukup tempatkan dalam salah satu direktori dan Smarty akan menggunakannya secara otomatis.