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:
Esta es una continuación de la instalación básica, por favor lea esta primero!
Una forma un poco mas flexible de configurar el Smarty, expandir las
clases e iniciar su ambiente de Smarty. Es, en vez de configurar rutas
de directorios repetidamente, asigne esas mismas a variables, etc.,
nosotros podemos facilitar eso. Vamos a crear un nuevo directorio en
"/php/includes/guestbook/" y llamemos al nuevo archivo setup.php
. En nuestro ejemplo, "/php/includes" está en nuestro include_path.
Verifique que usted también lo definio, o utilice rutas absolutas de
los archivos.
Example 2.10. Editando /php/includes/guestbook/setup.php
<?php // load Smarty library require('Smarty.class.php'); // The setup.php file is a good place to load // required application library files, and you // can do that right here. An example: // require('guestbook/guestbook.lib.php'); class Smarty_GuestBook extends Smarty { function Smarty_GuestBook() { // Class Constructor. // These automatically get set with each new instance. $this->Smarty(); $this->template_dir = '/web/www.example.com/smarty/guestbook/templates/'; $this->compile_dir = '/web/www.example.com/smarty/guestbook/templates_c/'; $this->config_dir = '/web/www.example.com/smarty/guestbook/configs/'; $this->cache_dir = '/web/www.example.com/smarty/guestbook/cache/'; $this->caching = true; $this->assign('app_name', 'Guest Book'); } } ?>
Ahora vamos a modificar el archivo index.php para usar el setup.php:
Example 2.11. Editando /web/www.example.com/docs/guestbook/index.php
<?php require('guestbook/setup.php'); $smarty = new Smarty_GuestBook; $smarty->assign('name','Ned'); $smarty->display('index.tpl'); ?>
Ahora usted vera que es completamente simple crear una instancia de Smarty, solo use Smarty_GuestBook, que automáticamente inicializa todo para nuestra aplicación.