Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Templates composants

Traditionnellemnt, la programmation avec des templates dans les applications se déroule de la façon suivante : d'abord vous récupérez vos variables dans l'application PHP (peut-être avec des requêtes en base de données), puis vous instanciez votre objet Smarty, assign() les variables et display() le template. Disons par exemple que nous avons un téléscripteur dans notre template. Nous récupérerions les données dans notre application, puis les assignerions ensuite pour les afficher. Mais ne serait-ce pas mieux de pouvoir ajouter ce téléscripteur à n'importe quelle application en incluant directement le template sans avoir à se soucier de la récupération des données ?

Vous pouvez réaliser celà en écrivant un plugin personnalisé pour récupérer le contenu et l'assigner à une variable du template.

Example 18.7. Template composant

function.load_ticker.php - Efface le fichier du répertoire des $plugins


<?php

// notre fonction pour récupérer les données
function fetch_ticker($symbol,&amp;$ticker_name,&amp;$ticker_price) 
{
   // du traitement qui récupère $ticker_name
   // depuis la ressource ticker
   return $ticker_info;
}

function smarty_function_load_ticker($params, &$smarty) 
{
   // appel de la fonction
   $ticker_info = fetch_ticker($params['symbol']);

   // assignation de la variable de template
   $smarty->assign($params['assign'], $ticker_info);
}
?>

    

index.tpl


{load_ticker symbol='SMARTY' assign="ticker"}

Stock Name: {$ticker.name} Stock Price: {$ticker.price}

    

Voir aussi {include_php}, {include} et {php}.

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors