Définir vos propres commandes

Comme Temphplate a prévu pour être facilement extensible il est assez simple de définir ses propres commandes {COMMANDE:PARAMS}. Il suffit de définir le nom de la commande, et la fonction qui sera utilisée pour le résultat.

Pour ajouter une commande c'est très simple, il suffit d'appeler la méthode addCommand('Nom de la commande', 'Nom de la fonction à appeler').

La fonction de callback comme on l'appelle, a un format et un comportement bien défini:

Exemple: basename

On va définir la commande {basename:fichier} qui va afficher le nom de base du chemin en paramètre (appel de la fonction php basename).

D'abord on définit la fonction qui sera appelée:

function temphplate_basename ( $tpl , $path , $params , &$success )
{
    // on a un seul paramètre
    $filename = $params[0];
    return basename($filename);
}

Il suffit ensuite d'appeler $tpl->addCommand('basename','temphplate_basename') pour ajouter cette commande à notre instance de Temphplate.

Résultat

FichierCommandeRésultat
/repertoire/fichier.txt{basename:/repertoire/fichier.txt}fichier.txt
repertoire1/repertoire2/{basename:repertoire1/repertoire2/}repertoire2
{std:template} ./index.htm{basename:{std:template}}index.htm
{std:script} /tutorial/commandes_utilisateur/index.php{basename:{std:script}}index.php


Generation time: 12.809ms