diff --git a/docs/fr/appendixes/resources.xml b/docs/fr/appendixes/resources.xml index 881ffa6b..dcbddad1 100644 --- a/docs/fr/appendixes/resources.xml +++ b/docs/fr/appendixes/resources.xml @@ -1,16 +1,35 @@ - + + Ressources - La page Web de Smarty se trouve à l'adresse suivante : &url.smarty; - Vous pouvez souscrire à la mailing liste en envoyant un email à - &ml.general.sub;. - Les archives de la mailing list se trouvent à l'adresse suivante : - &url.ml.archive; + La page Web de Smarty se trouve à l'adresse suivante : + &url.smarty; + + + Vous pouvez souscrire à la mailing liste en envoyant un email à + &ml.general.sub;. + Les archives de la mailing list se trouvent à l'adresse suivante : + ici + + + Les forums sur &url.forums; + + + Le wiki sur &url.wiki; + + + Le chat sur irc.freenode.net#smarty + + + La FAQ ici et ici + + + +--> \ No newline at end of file diff --git a/docs/fr/appendixes/tips.xml b/docs/fr/appendixes/tips.xml index b6ba7803..4d4349b0 100644 --- a/docs/fr/appendixes/tips.xml +++ b/docs/fr/appendixes/tips.xml @@ -1,6 +1,6 @@ - + Trucs et astuces @@ -10,13 +10,21 @@ Peut-être voudrez-vous des fois afficher une valeur par défaut pour une variable qui n'a pas été assignée, comme - pour afficher " " afin que les couleurs de fond - des tableaux fonctionnent. Beaucoup utiliseraient une - instruction {if} + pour afficher   afin que les couleurs + de fond des tableaux fonctionnent. Beaucoup utiliseraient une + instruction {if} pour gérer celà, mais il existe un moyen plus facile dans Smarty : l'utilisation du modificateur - de variable défaut. + de variable + default. + + Les erreurs de variable indéfinie seront affichés si + la fonction PHP + + error_reporting() vaut E_ALL + et qu'une variable n'a pas été assignée à Smarty. + + Afficher   quand une variable est vide @@ -36,8 +44,8 @@ - Voir aussi - default et + Voir aussi + default et la gestion des variables par défaut. @@ -46,12 +54,14 @@ Gestion des variables par défaut Si une variable est utilisée fréquemment dans vos templates, - lui appliquer le modificateur par défaut peut être un peu fastidieux. + lui appliquer le modificateur + default + peut être un peu fastidieux. Vous pouvez remédier à celà en lui assignant une valeur par défaut - avec la fonction {assign}. + avec la fonction {assign}. - assigner une valeur par défaut à une variable de template + Assigner une valeur par défaut à une variable de template Voir aussi - default et + default et la gestion des variables non-assignées. @@ -74,18 +84,18 @@ Quand la majorité de vos templates utilisent les mêmes en-tête et pied-de-page, il est d'usage de les mettre dans leurs propres templates et de les inclure - ({include}). + ({include}). Mais comment faire si l'en-tête doit avoir un titre différent, selon la page d'où on vient ? Vous pouvez passer le titre à l'en-tête en tant qu' attribut quand il est inclus. - passer le titre au template d'en-tête + Passer le titre au template d'en-tête mainpage.tpl - Lorsque la page principal est construite, - le titre 'Man Page' est passé au header.tpl et sera utilisé + le titre Man Page est passé au header.tpl et sera utilisé en tant que titre. @@ -98,12 +108,13 @@ archives.tpl - Lorsque la page principal est construite, le titre - sera 'Archives'. Notez que dans cet exemple, nous utilisons une variable du fichier + sera Archives. Notez que dans cet exemple, nous utilisons une variable du fichier archives_page.conf au lieu d'une variable classique. - header.tpl - Notez que "Smarty News" est affiché si la variable - $title n'est pas définie, en utilisant le modificateur de variable par - défaut. + header.tpl - Notez que Smarty News est affiché + si la variable $title n'est pas définie, en utilisant le modificateur de variable par + default. De façon générale, essayez de toujours passer les dates à Smarty sous forme de timestamp. - Celà permet aux designers de templates d'utiliser - date_format + Cela permet aux designers de templates d'utiliser + date_format pour avoir un contrôle total sur le formatage des dates et de comparer facilement les dates entre elles. - - - A partir Smarty 1.4.0, vous pouvez passer les dates à Smarty - sous la forme de timestamps Unix ou MySQL, ou tout autre format de dates - que comprend strtotime(). - - Utilisation de date_format @@ -166,7 +170,7 @@ @@ -179,10 +183,13 @@ Jan 4, 2001 - - + + + Les dates peuvent être comparées dans le template en utilisant les timestamps, comme ceci : + + - En utilisant la fonction {html_select_date} + En utilisant la fonction + {html_select_date} dans un template, le programmeur veut en général convertir le résultat d'un formulaire en un timestamp. Voici une fonction qui devrait vous être utile. @@ -210,13 +218,13 @@ $startDate = makeTimeStamp($startDate_Year, $startDate_Month, $startDate_Day); function makeTimeStamp($year='', $month='', $day='') { if(empty($year)) { - $year = strftime("%Y"); + $year = strftime('%Y'); } if(empty($month)) { - $month = strftime("%m"); + $month = strftime('%m'); } if(empty($day)) { - $day = strftime("%d"); + $day = strftime('%d'); } return mktime(0, 0, 0, $month, $day, $year); @@ -228,10 +236,10 @@ function makeTimeStamp($year='', $month='', $day='') Voir aussi - {html_select_date}, - {html_select_time}, - date_format et - $smarty.now, + {html_select_date}, + {html_select_time}, + date_format et + $smarty.now, @@ -311,8 +319,9 @@ function insert_header() 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 + 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 @@ -329,7 +338,7 @@ function insert_header() function.load_ticker.php - Efface le fichier du répertoire des - $plugins + $plugins Voir aussi - {include_php}, - {include} et - {php}. + {include_php}, + {include} et + {php}. @@ -380,14 +389,13 @@ Stock Name: {$ticker.name} Stock Price: {$ticker.price} adresses est de parcourir les pages Web. Voici une façon de remédier à ce problème : mettre votre adresse email dans du Javascript brouillé au milieu de votre source HTML, sans que celà ne gêne l'affichage sur le - navigateur Web. Celà est fait grâce au plugin - {mailto}. + navigateur Web. Cela est fait grâce au plugin + {mailto}. Exemple de dissimulation d'une adresse email Envoyer une demande à {mailto address=$EmailAddress encode='javascript' subject='Bonjour'} ]]> @@ -403,8 +411,8 @@ Stock Name: {$ticker.name} Stock Price: {$ticker.price} Voir aussi - escape et - {mailto}. + escape et + {mailto}. diff --git a/docs/fr/appendixes/troubleshooting.xml b/docs/fr/appendixes/troubleshooting.xml index defe66b7..dda7f224 100644 --- a/docs/fr/appendixes/troubleshooting.xml +++ b/docs/fr/appendixes/troubleshooting.xml @@ -1,6 +1,7 @@ - + + Diagnostic des erreurs @@ -13,15 +14,15 @@ erreurs Smarty - + - + @@ -38,131 +39,135 @@ Fatal error: Smarty: [in index.tpl line 28]: syntax error: missing section name Erreur d'analyse PHP - + - + - Quand vous rencontrez une erreur d'analyse PHP, le numéro de la ligne indiqué est celui du fichier PHP compilé et non du template. Vous pouvez alors regarder le template et détecter l'erreur. Voici quelques erreurs fréquentes : - balises fermantes pour {if}{/if} - ou {section}{/section} manquantes, ou - syntaxe logique incorrecte dans une instruction {if}. Si vous ne trouvez pas l'erreur, - vous devrez alors ouvrir le fichier PHP compilé et aller à la ligne correspondante pour - trouver d'où vient l'erreur. + balises fermantes pour + {if}{/if} + ou + {section}{/section} + manquantes, ou syntaxe logique incorrecte dans une instruction {if}. + Si vous ne trouvez pas l'erreur, vous devrez alors ouvrir le fichier PHP compilé et aller à la + ligne correspondante pour trouver d'où vient l'erreur. - - Autres erreurs communes - - - - + - - - - - - Le dossier $template_dir - est incorrect, n'existe pas ou le fichier - the file index.tpl n'est pas dans le dossier - templates/. - - - - - Une fonction {config_load} - est dans un template (ou - config_load() - a été appelé) et soit - $config_dir - est incohérent, n'existe pas, ou - site.conf n'est pas dans le dossier. - - - - - - - - - - - + + + + + + Le dossier + $template_dir + est incorrect, n'existe pas ou le fichier + the file index.tpl n'est pas dans le dossier + templates/. + + + + + Une fonction + {config_load} + est dans un template (ou + config_load() + a été appelé) et soit + $config_dir + est incohérent, n'existe pas, ou + site.conf n'est pas dans le dossier. + + + + + + + + + Soit le dossier - $compile_dir + $compile_dir n'est pas correctement défini, le dossier n'existe pas, ou templates_c est un fichier et non un dossier. - - - - + + + + + + + - Le dossier $compile_dir + Le dossier $compile_dir n'est pas accessible en écriture par le serveur web. Voir le bas de la page sur l'installation de - Smarty pour les permissions. + Smarty pour les permissions. + + - - - + - + + + Cela signifie que - $caching est activé et soit + $caching est activé et soit le dossier - $cache_dir + $cache_dir n'est pas correctement défini, le dossier n'existe pas, ou cache est un fichier et non un dossier. + + - - - + - + + + Cela signifie que - $caching est activé et le dossier - $cache_dir + $caching est activé et + le dossier + $cache_dir n'est pas accessible en écriture par le serveur web. Voir le bas de la page sur l'installation de - Smarty pour les permissions. + Smarty pour les permissions. - + Voir aussi le débogage, - $error_reporting et - trigger_error(). - + $error_reporting et + trigger_error(). + diff --git a/docs/fr/getting-started.xml b/docs/fr/getting-started.xml index dffcbe57..026bb37a 100644 --- a/docs/fr/getting-started.xml +++ b/docs/fr/getting-started.xml @@ -1,6 +1,6 @@ - + Pour commencer @@ -157,8 +157,8 @@ Installation de base Copiez les fichiers bibliothèques de Smarty du sous-dossier - /libs/ de la distribution à un emplacement accessible à PHP. - Ce sont des fichiers PHP que vous NE DEVEZ PAS + /libs/ de la distribution à un emplacement + accessible à PHP. Ce sont des fichiers PHP que vous NE DEVEZ PAS modifier. Ils sont partagés par toutes les applications et ne seront mis à jour que lorsque vous installerez une nouvelle version de Smarty. @@ -179,25 +179,26 @@ debug.tpl Smarty utilise une constante PHP appelée SMARTY_DIR qui - représente le chemin complet de la bibliothèque Smarty. En fait, - si votre application trouve le fichier + linkend="constant.smarty.dir">SMARTY_DIR qui + représente le chemin complet de la bibliothèque Smarty. + En fait, si votre application trouve le fichier Smarty.class.php, vous n'aurez pas - besoin de définir la variable SMARTY_DIR, + besoin de définir la variable + SMARTY_DIR, Smarty s'en chargera pour vous. En revanche, si Smarty.class.php n'est pas dans votre répertoire d'inclusion ou que vous ne donnez pas un chemin absolu à votre application, vous - devez définir SMARTY_DIR explicitement. SMARTY_DIR + devez définir SMARTY_DIR explicitement. + SMARTY_DIR doit avoir être terminé par un slash. - - Voici comment créer une instance de Smarty dans vos scripts PHP : - - - créer une instance de Smarty + Créer une instance de Smarty + + Voici comment créer une instance de Smarty dans vos scripts PHP : + livredor avec le nom de votre application. + Nous allons mettre nos répertoires Smarty dans /web/www.example.com/smarty/livredor/. @@ -322,18 +323,19 @@ $smarty = new Smarty(); Technical Note Il est pratique de configurer le serveur Web de - sorte que 'index.php' soit identifié comme fichier + sorte que index.php soit identifié comme fichier par défaut de ce répertoire. Aicnsi, si l'on tape - 'http://www.example.com/livredor/', le script 'index.php' soit - exécuté sans que 'index.php' ne soit spécifié dans l'URL. Avec Apache, - vous pouvez régler cela en ajoutant 'index.php' à la ligne où se - trouve DirectoryIndex (séparez chaque entrée par un espace) - dans le httpd.conf. - - - DirectoryIndex - index.htm index.html index.php index.php3 default.html index.cgi - + http://www.example.com/livredor/, le script + index.php soit exécuté sans que + index.php ne soit spécifié dans l'URL. Avec + Apache, vous pouvez régler cela en ajoutant index.php + à la ligne où se trouve DirectoryIndex (séparez chaque entrée + par un espace) dans le httpd.conf. + + + + + @@ -341,7 +343,7 @@ $smarty = new Smarty(); - Exemple de structure de fichiers + Structure de fichiers Smarty a besoin d'accéder en écriture aux répertoires - $compile_dir et - $cache_dir, + $compile_dir et + $cache_dir, assurez-vous donc que le serveur Web dispose de ces droits d'accès. Il s'agit généralement de l'utilisateur "nobody" et du group "nobody". Pour les utilisateurs de OS X, l'utilisateur par défaut est "web" et le group "web". Si vous utilisez Apache, vous pouvez - parcourir le fichier httpd.conf (en général dans + parcourir le fichier httpd.conf (en général dans "/usr/local/apache/conf/") pour déterminer quel est l'utilisateur et le groupe auquel il appartient. @@ -389,7 +391,7 @@ chmod 770 /web/www.example.com/smarty/livredor/cache/ - Note technique + Note La commande chmod 770 est relativement bien sécurisée, elle donne à l'utilisateur "nobody" et au groupe "nobody" les accès en @@ -400,12 +402,13 @@ chmod 770 /web/www.example.com/smarty/livredor/cache/ - Nous devons créer le fichier 'index.tpl' que Smarty va charger. - Il va se trouver dans le dossier $template_dir. + Nous devons créer le fichier index.tpl que Smarty va charger. + Il va se trouver dans le dossier + $template_dir. - Edition de /web/www.example.com/smarty/templates/index.tpl + Notre /web/www.example.com/smarty/templates/index.tpl Note technique - {* Smarty *} est un commentaire + {* Smarty *} est un + commentaire de template. Il n'est pas obligatoire mais il est bon de commencer tous vos templates avec ce commentaire. Celà rend le fichier facilement reconnaissable en plus de son extension. Les éditeurs @@ -430,10 +434,11 @@ Bonjour, {$name}, Bienvenue dans Smarty ! - Maintenant passons à l'édition du fichier 'index.php'. Nous allons - créer une instance de Smarty, assigner + Maintenant passons à l'édition du fichier index.php. Nous allons + créer une instance de Smarty, + assigner une valeur à une variable de template et - afficher le résultat avec 'index.tpl'. + afficher le résultat avec index.tpl. @@ -495,52 +500,54 @@ $smarty->display('index.tpl'); 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 + /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. - édition de /php/includes/livredor/setup.php + Édition de /php/includes/livredor/setup.php Smarty(); + $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->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'); - } + $this->caching = true; + $this->assign('app_name', 'Guest Book'); + } - } +} ?> ]]> - Modifions maintenant le fichier 'index.php' pour qu'il utilise 'setup.php' + Modifions maintenant le fichier index.php pour qu'il utilise + setup.php @@ -548,13 +555,13 @@ $smarty->display('index.tpl'); assign('name','Ned'); +$smarty->assign('name','Ned'); - $smarty->display('index.tpl'); +$smarty->display('index.tpl'); ?> ]]> @@ -563,8 +570,8 @@ $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. + correctement configurée, en utilisant Smarty_livredor() + qui initialise automatiquement tout ce qu'il faut pour votre application. diff --git a/docs/fr/language-snippets.ent b/docs/fr/language-snippets.ent index 80031c01..d2b07c3f 100644 --- a/docs/fr/language-snippets.ent +++ b/docs/fr/language-snippets.ent @@ -1,6 +1,6 @@ - + Note technique @@ -20,10 +20,33 @@ C'est au cas o même template, par exemple, pour avoir des templates compilés pour différents langages. Une autre utilité pour l'identifiant de compilation $compile_id est lorsque vous utilisez plus d'un -$template_dir mais -seulement un $compile_dir. +$template_dir mais +seulement un $compile_dir. Définissez un $compile_id -séparé pour chaque $template_dir, +séparé pour chaque +$template_dir, sinon, les templates du même nom s'effaceront. Vous pouvez également définir la variable $compile_id une seule -fois plutôt que de la passer à chaque appel à la fonction.'> \ No newline at end of file +fois plutôt que de la passer à chaque appel à la fonction.'> + + + La fonction PHP de callback function peut être soit : + + + Une chaîne de caractères contenant la fonction name + + + + Un tableau sous la forme array(&$object, $method) où + &$object est une référence d'objet et + $method une chaîne contenant le nom de la méthode + + + + Un tableau sous la forme + array(&$class, $method) où + $class est le nom de la classe et + $method est une méthode de la classe. + + + '> \ No newline at end of file