sync with EN

This commit is contained in:
yannick
2006-10-07 12:05:26 +00:00
parent 1c80cd9cc8
commit f4629a1aef
6 changed files with 113 additions and 70 deletions

View File

@@ -1,18 +1,28 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.7 Maintainer: yannick Status: ready -->
<!-- EN-Revision: 1.8 Maintainer: yannick Status: ready -->
<sect1 id="advanced.features.objects">
<title>Objets</title>
<para>
Smarty donne l'acc<63>s aux <ulink url="&url.php-manual;object">objets</ulink>
PHP <20> travers les templates. Il y a 2 moyens d'y avoir acc<63>s. Le premier consiste <20>
PHP <20> travers les templates. Il y a 2 moyens d'y avoir acc<63>s.
</para>
<itemizedlist spacing="compact">
<listitem><para>
Le premier consiste <20>
<link linkend="api.register.object">allouer les objets</link>
au template puis de les utiliser avec une syntaxe similaire a celles
des <link linkend="language.custom.functions">fonctions personnalis<69>es</link>.
</para></listitem>
<listitem><para>
Le deuxi<78>me moyen consiste <20> <link linkend="api.assign">assigner</link> des objets
aux templates et de les utiliser comme n'importe quelle
variable. La premi<6D>re m<>thode a une syntaxe beaucoup plus sympathique.
variable.
</para></listitem>
</itemizedlist>
<para>
La premi<6D>re m<>thode a une syntaxe beaucoup plus sympathique.
Elle est aussi plus s<>curis<69>e, puisqu'un objet allou<6F> ne peut avoir acc<63>s
qu'a certaines m<>thodes et propri<72>t<EFBFBD>s. N<>anmoins,
<emphasis role="bold">un objet allou<6F> ne peut pas avoir de lien sur lui-m<>me
@@ -22,7 +32,7 @@
afin de r<>duire la syntaxe des templates au minimum.
</para>
<para>
Si l'option de <link linkend="variable.security">s<EFBFBD>curit<EFBFBD></link>
Si l'option de <link linkend="variable.security">s<EFBFBD>curit<EFBFBD></link>
est activ<69>e, aucune m<>thode ou fonctions priv<69>es
n'est accessible (commentant par "_"). S'il existe une m<>thode et une
propri<72>t<EFBFBD> du m<>me nom, c'est la m<>thode qui sera utilis<69>e.
@@ -39,7 +49,7 @@
Le premier param<61>tre correspond <20> un tableau associatif, le second <20> l'objet
Smarty. Si vous souhaitez que les param<61>tres soient pass<73>s un <20> un, comme
dans un appel traditionnel, d<>finissez registration, quatri<72>me param<61>tre optionnel,
<20> false.
<20> &false;.
</para>
<para>
Le cinqui<75>me param<61>tre optionnel n'a d'effet que si le param<61>tre
@@ -47,8 +57,8 @@
une liste de m<>thodes qui doivent <20>tre trait<69>es comme des blocks. Cel<65> signifie
que ces m<>thodes ont un tag fermant dans le template
(<literal>{foobar->meth2}...{/foobar->meth2}</literal>) et que les param<61>tres
de ces m<>thodes fonctionnent de la m<>me fa<66>on que les param<61>tres des
<link linkend="plugins.block.functions">blocks de fonctions des plugins</link> :
de ces m<>thodes fonctionnent de la m<>me fa<66>on que les param<61>tres des
<link linkend="plugins.block.functions">blocks de fonctions des plugins</link> :
Ils contiennent 4 param<61>tres
<parameter>$params</parameter>,
<parameter>$content</parameter>,
@@ -87,7 +97,7 @@ $smarty->display('index.tpl');
]]>
</programlisting>
<para>
Et voici comment acc<63>der <20> vos objets dans index.tpl:
Et voici comment acc<63>der <20> vos objets dans <filename>index.tpl</filename> :
</para>
<programlisting>
<![CDATA[
@@ -105,8 +115,8 @@ the output was {$output)
</example>
<para>
Voir aussi
<link linkend="api.register.object">register_object()</link> et
<link linkend="api.assign">assign()</link>.
<link linkend="api.register.object"><varname>register_object()</varname></link> et
<link linkend="api.assign"><varname>assign()</varname></link>.
</para>
</sect1>

View File

@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.6 Maintainer: yannick Status: ready -->
<!-- EN-Revision: 1.7 Maintainer: yannick Status: ready -->
<sect1 id="advanced.features.outputfilters">
<title>Filtres de sortie</title>
<para>
Quand le template est appel<65> via les fonctions
<link linkend="api.display">display()</link> ou
<link linkend="api.fetch">fetch()</link>,
<link linkend="api.display"><varname>display()</varname></link> ou
<link linkend="api.fetch"><varname>fetch()</varname></link>,
sa sortie est envoy<6F>e <20> travers un ou plusieurs filtres de sorties.
Ils diff<66>rent des <link linkend="advanced.features.postfilters">filtres
de post-compilation</link> dans le sens o<> ils agissent sur la sortie
@@ -19,9 +19,9 @@
<link linkend="api.register.outputfilter">d<EFBFBD>clar<EFBFBD>s</link> soit
charg<72>s depuis les <link linkend="variable.plugins.dir">r<EFBFBD>pertoires
des plugins</link> en utilisant la fonction
<link linkend="api.load.filter">load_filter()</link>
<link linkend="api.load.filter"><varname>load_filter()</varname></link>
ou en r<>glant la variable
<link linkend="variable.autoload.filters">$autoload_filters</link>.
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>.
Smarty passera la sortie du template en premier argument et attendra
de la fonction qu'elle retourne le r<>sultat de l'ex<65>cution.
</para>
@@ -51,11 +51,11 @@ $smarty->display('index.tpl');
</example>
<para>
Voir aussi
<link linkend="api.register.outputfilter">register_outpurfilter()</link>,
<link linkend="api.load.filter">load_filter()</link>,
<link linkend="variable.autoload.filters">$autoload_filters</link>,
<link linkend="api.register.outputfilter"><varname>register_outpurfilter()</varname></link>,
<link linkend="api.load.filter"><varname>load_filter()</varname></link>,
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>,
les <link linkend="advanced.features.postfilters">filtres de post-compilation</link> et
<link linkend="variable.plugins.dir">$plugins_dir</link>.
<link linkend="variable.plugins.dir"><parameter>$plugins_dir</parameter></link>.
</para>
</sect1>

View File

@@ -1,16 +1,18 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.6 Maintainer: yannick Status: ready -->
<!-- EN-Revision: 1.7 Maintainer: yannick Status: ready -->
<sect1 id="advanced.features.postfilters">
<title>Filtres de post-compilation</title>
<para>
Les filtres de post-compilation sont des fonctions PHP que vos templates
ex<65>cutent apr<70>s avoir <20>t<EFBFBD> compil<69>s. Les filtres de post-compilation peuvent
<20>tre soit <link linkend="api.register.postfilter">d<EFBFBD>clar<EFBFBD>s</link>, soit charg<72>s
ex<65>cutent <emphasis>apr<EFBFBD>s avoir <20>t<EFBFBD> compil<69>s</emphasis>. Les filtres de post-compilation
peuvent <20>tre soit <link linkend="api.register.postfilter">d<EFBFBD>clar<EFBFBD>s</link>, soit charg<72>s
depuis les <link linkend="variable.plugins.dir">r<EFBFBD>pertoires des plugins</link>
en utilisant la fonction <link linkend="api.load.filter">load_filter()</link> ou en r<>glant
la variable <link linkend="variable.autoload.filters">$autoload_filters</link>.
en utilisant la fonction
<link linkend="api.load.filter"><varname>load_filter()</varname></link> ou en r<>glant
la variable
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>.
Smarty passera le template compil<69> en tant que premier param<61>tre et attendra
de la fonction qu'elle retourne le r<>sultat de l'ex<65>cution.
</para>
@@ -32,7 +34,7 @@ $smarty->display('index.tpl');
]]>
</programlisting>
<para>
Votre template Smarty index.tpl ressemblera, apr<70>s compilation <20> :
Votre template Smarty <filename>index.tpl</filename> ressemblera, apr<70>s compilation <20> :
</para>
<screen>
<![CDATA[
@@ -43,9 +45,9 @@ $smarty->display('index.tpl');
</example>
<para>
Voir aussi
<link linkend="api.register.postfilter">register_postfilter()</link>,
<link linkend="api.register.postfilter"><varname>register_postfilter()</varname></link>,
<link linkend="advanced.features.prefilters">les pr<70>-filtres</link> et
<link linkend="api.load.filter">load_filter()</link>.
<link linkend="api.load.filter"><varname>load_filter()</varname></link>.
</para>
</sect1>

View File

@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.4 Maintainer: yannick Status: ready -->
<!-- EN-Revision: 1.5 Maintainer: yannick Status: ready -->
<sect1 id="advanced.features.prefilters">
<title>Filtres de pr<70>-compilation</title>
<para>
Les filtres de pr<70>-compilation sont des fonctions PHP que vos templates
ex<65>cutent avant qu'ils ne soient compil<69>s. Cel<65> peut <20>tre utile
ex<65>cutent <emphasis>avant qu'ils ne soient compil<69>s</emphasis>. Cel<65> peut <20>tre utile
pour pr<70>-traiter vos templates afin d'enlever les commentaires
inutiles, garder un oeil sur ce que les gens mettent dans leurs templates, etc.
</para>
@@ -14,9 +14,9 @@
Les filtre de pr<70>-compilations peuvent <20>tre soit
<link linkend="api.register.prefilter">d<EFBFBD>clar<EFBFBD>s</link>, soit charg<72>s
<20> partir des <link linkend="variable.plugins.dir">r<EFBFBD>pertoires de plugins</link>
en utilisant la fonction <link linkend="api.load.filter">load_filter()</link> ou
en utilisant la fonction <link linkend="api.load.filter"><varname>load_filter()</varname></link> ou
en r<>glant la variable
<link linkend="variable.autoload.filters">$autoload_filters</link>.
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>.
</para>
<para>
Smarty passera <20> la fonction le code source en tant que premier argument,
@@ -45,9 +45,9 @@ $smarty->display('index.tpl');
</example>
<para>
Voir aussi
<link linkend="api.register.prefilter">register_prefilter()</link>,
<link linkend="api.register.prefilter"><varname>register_prefilter()</varname></link>,
les <link linkend="advanced.features.postfilters">post-filtres</link> et
<link linkend="api.load.filter">load_filter()</link>.
<link linkend="api.load.filter"><varname>load_filter()</varname></link>.
</para>
</sect1>

View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.4 Maintainer: gerald Status: ready -->
<!-- EN-Revision: 1.5 Maintainer: gerald Status: ready -->
<sect1 id="section.template.cache.handler.func">
<title>Fonction de gestion du cache</title>
<para>
@@ -14,25 +15,53 @@
fonction <20> la variable de classe
<link linkend="variable.cache.handler.func">$cache_handler_func</link>.
Smarty utilisera alors cette fonction pour g<>rer les donn<6E>es du cache.
Le premier argument est l'action, qui sera 'read', 'write' ou 'clear'.
Le second param<61>tre est l'objet Smarty. Le troisi<73>me est le contenu
du cache. Pour <20>crire, Smarty passe le contenu du cache dans ces param<61>tres.
Pour lire, Smarty s'attend <20> ce que votre fonction accepte ce param<61>tre
par r<>f<EFBFBD>rence et que vous le remplissiez avec les donn<6E>es du cache. Pour effacer,
il suffit de passer une variable fictive car cette derni<6E>re n'est pas utilis<69>e.
Le quatri<72>me param<61>tre est le nom du fichier de template (utile pour
lire/<2F>crire), le cinqui<75>me param<61>tre est l'identifiant de cache (optionnel)
et le sixi<78>me est l'identifiant de compilation (optionnel).
</para>
<para>
Note: Le dernier param<61>tre ($exp_time) a <20>t<EFBFBD> ajout<75> dans Smarty-2.6.0.
</para>
<itemizedlist>
<listitem><para>
Le premier argument est l'action, qui sera <literal>read</literal>, <literal>write</literal> and
<literal>clear</literal>.
</para></listitem>
<listitem><para>
Le second param<61>tre est l'objet Smarty.
</para></listitem>
<listitem><para>
Le troisi<73>me est le contenu
du cache. Pour <20>crire, Smarty passe le contenu du cache dans ces param<61>tres.
Pour lire, Smarty s'attend <20> ce que votre fonction accepte ce param<61>tre
par r<>f<EFBFBD>rence et que vous le remplissiez avec les donn<6E>es du cache. Pour effacer,
il suffit de passer une variable fictive car cette derni<6E>re n'est pas utilis<69>e.
</para></listitem>
<listitem><para>
Le quatri<72>me param<61>tre est le nom du fichier de template (utile pour
lire/<2F>crire).
</para></listitem>
<listitem><para>
Le cinqui<75>me param<61>tre est l'identifiant <parameter>$cache_id</parameter>.
</para></listitem>
<listitem><para>
Le sixi<78>me est l'identifiant optionnel <link linkend="variable.compile.id">
<parameter>$compile_id</parameter></link>.
</para></listitem>
<listitem><para>
Le septi<74>me et dernier param<61>tre <parameter>$exp_time</parameter>
a <20>t<EFBFBD> ajout<75> dans Smarty-2.6.0.
</para></listitem>
</itemizedlist>
<example>
<title>Exemple d'utilisation de MySQL pour la source du cache</title>
<programlisting role="php">
<![CDATA[
<?php
/*
/*****
exemple d'usage :
@@ -54,7 +83,7 @@ CacheID char(32) PRIMARY KEY,
CacheContents MEDIUMTEXT NOT NULL
);
*/
*****/
function mysql_cache_handler($action, &$smarty_obj, &$cache_content, $tpl_file=null, $cache_id=null, $compile_id=null)
{

View File

@@ -1,27 +1,29 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.4 Maintainer: yannick Status: ready -->
<!-- EN-Revision: 1.5 Maintainer: yannick Status: ready -->
<sect1 id="template.resources">
<title>Ressources</title>
<para>
Les templates peuvent provenir d'une grande vari<72>t<EFBFBD> de ressources. Quand vous
affichez (<link linkend="api.display">display()</link>) ou
r<>cup<75>rez (<link linkend="api.fetch">fetch()</link>) un template, ou quand vous incluez un template
dans un autre template, vous fournissez un type de ressource, suivi
par le chemin appropri<72> et le nom du template. Si une ressource n'est pas
explicitement donn<6E>e, la valeur de la variable <link
linkend="variable.default.resource.type">$default_resource_type</link>
affichez (<link linkend="api.display"><varname>display()</varname></link>) ou
r<>cup<75>rez (<link linkend="api.fetch"><varname>fetch()</varname></link>) un
template, ou quand vous incluez un template dans un autre template, vous fournissez
un type de ressource, suivi par le chemin appropri<72> et le nom du template.
Si une ressource n'est pas explicitement donn<6E>e, la valeur de la variable <link
linkend="variable.default.resource.type"><parameter>$default_resource_type</parameter></link>
sera utilis<69>e.
</para>
<sect2 id="templates.from.template.dir">
<title>Templates depuis $template_dir</title>
<para>
Les templates du r<>pertoire
<link linkend="variable.template.dir">$template_dir</link> n'ont pas
Les templates du r<>pertoire
<link linkend="variable.template.dir"><parameter>$template_dir</parameter></link> n'ont pas
besoin d'une ressource template, bien que vous puissiez utiliser
la ressource "file" pour <20>tre coh<6F>rent. Vous n'avez qu'<27> fournir
le chemin vers le template que vous voulez utiliser, relatif
au r<>pertoire racine <link linkend="variable.template.dir">$template_dir</link>.
au r<>pertoire racine
<link linkend="variable.template.dir"><parameter>$template_dir</parameter></link>.
</para>
<example>
<title>Utilisation de templates depuis $template_dir</title>
@@ -43,9 +45,9 @@ $smarty->display("file:admin/menu.tpl"); // le m
<sect2 id="templates.from.any.dir">
<title>Templates <20> partir de n'importe quel r<>pertoire</title>
<para>
Les templates en-dehors du r<>pertoire
<link linkend="variable.template.dir">$template_dir</link> n<>cessitent
le type de ressource template, suivi du chemin absolu et du nom du
Les templates en-dehors du r<>pertoire
<link linkend="variable.template.dir"><parameter>$template_dir</parameter></link>
n<EFBFBD>cessitent le type de ressource template, suivi du chemin absolu et du nom du
template.
</para>
<example>
@@ -53,8 +55,8 @@ $smarty->display("file:admin/menu.tpl"); // le m
<programlisting role="php">
<![CDATA[
<?php
$smarty->display("file:/export/templates/index.tpl");
$smarty->display("file:/path/to/my/templates/menu.tpl");
$smarty->display('file:/export/templates/index.tpl');
$smarty->display('file:/path/to/my/templates/menu.tpl');
?>
]]>
</programlisting>
@@ -63,7 +65,7 @@ $smarty->display("file:/path/to/my/templates/menu.tpl");
</para>
<programlisting>
<![CDATA[
{include file="file:/usr/local/share/templates/navigation.tpl"}
{include file='file:/usr/local/share/templates/navigation.tpl'}
]]>
</programlisting>
</example>
@@ -73,7 +75,7 @@ $smarty->display("file:/path/to/my/templates/menu.tpl");
<para>
Si vous utilisez Windows, les chemins de fichiers sont la plupart
du temps sur un disque identifi<66> par une lettre (c:) au d<>but du chemin.
Assurez-vous de bien mettre "file:" dans le chemin pour <20>viter des
Assurez-vous de bien mettre <literal>file:</literal> dans le chemin pour <20>viter des
conflits d'espace de noms et obtenir les r<>sultats escompt<70>s.
</para>
<example>
@@ -81,8 +83,8 @@ $smarty->display("file:/path/to/my/templates/menu.tpl");
<programlisting role="php">
<![CDATA[
<?php
$smarty->display("file:C:/export/templates/index.tpl");
$smarty->display("file:F:/path/to/my/templates/menu.tpl");
$smarty->display('file:C:/export/templates/index.tpl');
$smarty->display('file:F:/path/to/my/templates/menu.tpl');
?>
]]>
</programlisting>
@@ -91,7 +93,7 @@ $smarty->display("file:F:/path/to/my/templates/menu.tpl");
</para>
<programlisting>
<![CDATA[
{include file="file:D:/usr/local/share/templates/navigation.tpl"}
{include file='file:D:/usr/local/share/templates/navigation.tpl'}
]]>
</programlisting>
</example>
@@ -114,7 +116,7 @@ $smarty->display("file:F:/path/to/my/templates/menu.tpl");
<note>
<para>
Notez que vous ne pouvez pas <20>craser la ressource <literal>file</literal> native,
Notez que vous ne pouvez pas <20>craser la ressource <literal>file:</literal> native,
toutefois, vous pouvez fournir une ressource qui r<>cup<75>re un template depuis
le syst<73>me de fichier par un autre moyen en l'enregistrant sous un autre
nom de ressource.
@@ -184,7 +186,7 @@ $smarty->display("db:index.tpl");
</para>
<programlisting>
<![CDATA[
{include file="db:/extras/navigation.tpl"}
{include file='db:/extras/navigation.tpl'}
]]>
</programlisting>
</example>