mirror of
https://github.com/smarty-php/smarty.git
synced 2025-08-04 18:34:27 +02:00
add a new translated file and sync the two previous ones
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.1 Maintainer: didou Status: ready -->
|
||||
<sect1 id="language.escaping">
|
||||
<title>D<EFBFBD>sactiver l'analyse de Smarty</title>
|
||||
<para>
|
||||
|
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.1 Maintainer: didou Status: ready -->
|
||||
<sect1 id="language.math">
|
||||
<title>Math<EFBFBD>matiques</title>
|
||||
<para>
|
||||
|
138
docs/fr/programmers/caching/caching-cacheable.xml
Normal file
138
docs/fr/programmers/caching/caching-cacheable.xml
Normal file
@@ -0,0 +1,138 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<!-- EN-Revision: 1.3 Maintainer: didou Status: ready -->
|
||||
<sect1 id="caching.cacheable">
|
||||
<title>Contr<EFBFBD>ler la mise en cache des sorties des Plugins</title>
|
||||
<para>
|
||||
Depuis Smarty-2.6.0, la mise en cache des plugins peut <20>tre d<>clar<61>e lors
|
||||
de leur inscription. Les troisi<73>mes param<61>tres de register_block,
|
||||
register_compiler_function et register_function sont appel<65>s
|
||||
<parameter>$cacheable</parameter> et valent true par d<>faut, ce qui est
|
||||
aussi le comportement par d<>faut des versions de Smarty pr<70>c<EFBFBD>dent la 2.6.0
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lors de l'inscription d'un plugin avec $cacheable=false, le plugin est
|
||||
appel<65> <20> chaque fois que la page est affich<63>e, m<>me si la page vient du
|
||||
cache. La fonction plugin se comporte presque comme la fonction
|
||||
<link linkend="plugins.inserts">insert</link>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Contrairement <20> <link linkend="language.function.insert">{insert}</link>
|
||||
les attributs pour le plugin ne sont pas mis en cache par d<>faut. Cela peut
|
||||
<20>tre le cas en utilisant le quatri<72>me param<61>tre
|
||||
<parameter>$cache_attrs</parameter>. <parameter>$cache_attrs</parameter>
|
||||
est un tableau de noms d'attributs qui doivent <20>tre mis en cache, pour que
|
||||
la fonction plugin re<72>oive les valeurs telles qu'elles <20>taient d<>finies lorsque
|
||||
la page a <20>t<EFBFBD> mise en cache, <20> chaque r<>cup<75>ration <20> partir du cache.
|
||||
</para>
|
||||
|
||||
<example>
|
||||
<title>Eviter la mise en cache du r<>sultat d'un plugin</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
index.php:
|
||||
|
||||
<?php
|
||||
require('Smarty.class.php');
|
||||
$smarty = new Smarty;
|
||||
$smarty->caching = true;
|
||||
|
||||
function remaining_seconds($params, &$smarty) {
|
||||
$remain = $params['endtime'] - time();
|
||||
if ($remain >=0)
|
||||
return $remain . " second(s)";
|
||||
else
|
||||
return "done";
|
||||
}
|
||||
|
||||
$smarty->register_function('remaining', 'remaining_seconds', false, array('endtime'));
|
||||
|
||||
if (!$smarty->is_cached('index.tpl')) {
|
||||
// r<>cup<75>ration de $obj <20> partir de la page et assignation...
|
||||
$smarty->assign_by_ref('obj', $obj);
|
||||
}
|
||||
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
|
||||
|
||||
index.tpl:
|
||||
|
||||
Time Remaining: {remain endtime=$obj->endtime}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Le nombre de secondes avant que la date de fin de $obj ne soit atteinte change
|
||||
<20> chaque affichage de la page, m<>me si la page est mise en cache. Comme l'attribut
|
||||
endtime est mis en cache, il n'y a que l'objet qui ait besoin d'<27>tre extrait de la
|
||||
base de donn<6E>es lors de la mise en cache de la page, mais pas lors des affichages
|
||||
ult<6C>rieurs de la page.
|
||||
</para>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Eviter la mise en cache d'une portion du template</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
index.php:
|
||||
|
||||
<?php
|
||||
require('Smarty.class.php');
|
||||
$smarty = new Smarty;
|
||||
$smarty->caching = true;
|
||||
|
||||
function smarty_block_dynamic($param, $content, &$smarty) {
|
||||
return $content;
|
||||
}
|
||||
$smarty->register_block('dynamic', 'smarty_block_dynamic', false);
|
||||
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
|
||||
|
||||
index.tpl:
|
||||
|
||||
Page created: {"0"|date_format:"%D %H:%M:%S"}
|
||||
|
||||
{dynamic}
|
||||
|
||||
Now is: {"0"|date_format:"%D %H:%M:%S"}
|
||||
|
||||
... do other stuff ...
|
||||
|
||||
{/dynamic}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lors du rechargement de la page, vous remarquerez que les deux dates sont diff<66>rentes.
|
||||
L'une est "dynamique" et l'autre est "statique". Vous pouvez faire ce que vous voulez
|
||||
entre {dynamic}...{/dynamic} et <20>tre s<>rs que cela ne sera pas mis en cache comme le
|
||||
reste de la page.
|
||||
</para>
|
||||
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
Reference in New Issue
Block a user