smarty template engine
Sunday, September 07, 2008  
download | documentation | faq | forum | mailing lists | changelog | contribs 


search for in the  


Configuration avancée

Ceci est la suite de l'installation de base, veuillez lire cette dernière avant de poursuivre.

Une manière un peu plus commode de configurer Smarty est de faire votre propre classe fille et de l'initialiser selon votre environnement. De la sorte, nous n'aurons plus besoin de configurer à chaques fois les chemins de notre environnement. Créons un nouveau répertoire /php/includes/livredor/ et un nouveau fichier appelé setup.php. Dans notre exemple d'environnement, /php/includes est notre include_path PHP. Assurez-vous de faire la même chose ou alors d'utiliser des chemins absolus.

Exemple 2-10. Édition de /php/includes/livredor/setup.php

<?php
// charge la librairie Smarty
require('Smarty.class.php');

// le fichier setup.php est un bon
// endroit pour charger les fichiers
// de librairies de l'application et vous pouvez
// faire celà juste ici. Par exemple :
// require('livredor/livredor.lib.php');

class Smarty_livredor extends Smarty {

 function 
Smarty_livredor() {

 
// Constructeur de la classe.
 // Appelé automatiquement à l'instanciation de la classe.

 
$this->Smarty();

 
$this->template_dir '/web/www.example.com/smarty/livredor/templates/';
 
$this->compile_dir '/web/www.example.com/smarty/livredor/templates_c/';
 
$this->config_dir '/web/www.example.com/smarty/livredor/configs/';
 
$this->cache_dir '/web/www.example.com/smarty/livredor/cache/';

 
$this->caching true;
 
$this->assign('app_name''Guest Book');
 }

}
?>

Modifions maintenant le fichier index.php pour qu'il utilise setup.php

Exemple 2-11. Édition de /web/www.example.com/docs/livredor/index.php

<?php
require('livredor/setup.php');

$smarty = new Smarty_livredor();

$smarty->assign('name','Ned');

$smarty->display('index.tpl');

?>

Vous savez maintenant qu'il est facile de créer une instance de Smarty, correctement configurée, en utilisant Smarty_livredor() qui initialise automatiquement tout ce qu'il faut pour votre application.




 

credits 

Smarty Copyright © 2002-2008
New Digital Group, Inc.

All rights reserved.