Files
smarty/docs/fr/designers/language-builtin-functions/language-function-include.xml

215 lines
6.4 KiB
XML
Raw Normal View History

2004-04-13 15:43:47 +00:00
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
2006-10-01 11:18:39 +00:00
<!-- EN-Revision: 1.14 Maintainer: yannick Status: ready -->
2005-12-01 20:28:15 +00:00
2004-05-23 15:44:59 +00:00
<sect1 id="language.function.include">
2005-05-26 18:10:32 +00:00
<title>{include}</title>
2005-12-01 20:28:15 +00:00
<para>
2006-10-01 11:18:39 +00:00
Les balises <varname>{include}</varname> sont utilis<69>es pour inclure des templates <20>
2005-12-01 20:28:15 +00:00
l'int<6E>rieur d'autres templates. Toutes les variables disponibles
dans le template r<>alisant l'inclusion sont disponibles dans le
2006-10-01 11:18:39 +00:00
template inclus.
2005-12-10 22:09:38 +00:00
</para>
2005-12-01 20:28:15 +00:00
2006-10-01 11:18:39 +00:00
<itemizedlist>
<listitem><para>
La balise <varname>{include}</varname> doit contenir l'attribut
<parameter>file</parameter> qui contient le chemin vers la ressource de
template.
</para></listitem>
<listitem><para>
La d<>finition de l'attribut optionnel <parameter>assign</parameter>
sp<73>cifie la variable de template assign<67>e <20> la sortie de
<varname>{include}</varname> au lieu d'<27>tre affich<63>e. Similaire <20>
<link linkend="language.function.assign"><varname>{assign}</varname></link>.
</para></listitem>
<listitem><para>
Les variables peuvent <20>tre pass<73>es <20> des templates inclus comme
<link linkend="language.syntax.attributes">attributs</link>.
Toutes les variables explicitement pass<73>es <20> un template inclus
ne sont disponibles que dans le contexte du fichier inclus.
Les attributs de variables <20>crasent les variables courantes de template,
dans le cas o<> les noms sont les m<>mes.
</para></listitem>
<listitem><para>
Toutes les valeurs de variables assign<67>es sont restaur<75>es une fois le contexte
du template inclus referm<72>s. Ceci signifie que vous pouvez utiliser toutes les
variables depuis un template inclus dans le template inclus. Mais les modifications
faites aux variables dans le template inclus ne sont pas visibles dans le template
incluant, par<61>s l'instruction <varname>{include}</varname> statement.
</para></listitem>
<listitem><para>
Utilisez la synthaxe pour les
<link linkend="template.resources">ressources de template</link> aux fichiers
<varname>{include}</varname> en dehors du dossier
<link linkend="variable.template.dir"><parameter>$template_dir</parameter></link>.
</para></listitem>
</itemizedlist>
2004-05-23 15:44:59 +00:00
<informaltable frame="all">
<tgroup cols="5">
<colspec colname="param" align="center" />
<colspec colname="type" align="center" />
<colspec colname="required" align="center" />
<colspec colname="default" align="center" />
<colspec colname="desc" />
<thead>
<row>
<entry>Nom attribut</entry>
<entry>Type</entry>
<entry>Requis</entry>
<entry>Defaut</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>file</entry>
<entry>cha<EFBFBD>ne de caract<63>res</entry>
<entry>Oui</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>Le nom du template <20> inclure</entry>
</row>
<row>
<entry>assign</entry>
<entry>cha<EFBFBD>ne de caract<63>res</entry>
<entry>Non</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>Le nom de la variable dans laquelle sera assign<67>e
la sortie de include</entry>
</row>
<row>
<entry>[var ...]</entry>
<entry>[type de variable]</entry>
<entry>Non</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>Variables <20> passer au template</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<example>
2006-10-01 11:18:39 +00:00
<title>Exemple avec {include}</title>
2005-09-03 08:53:14 +00:00
<programlisting>
2006-10-01 11:18:39 +00:00
<![CDATA[
2005-09-03 08:53:14 +00:00
<html>
<head>
<title>{$title}</title>
</head>
<body>
2005-12-01 20:28:15 +00:00
{include file='page_header.tpl'}
2004-04-13 15:43:47 +00:00
2006-10-01 11:18:39 +00:00
{* Le corps du template va ici, la variable $tpl_name est remplac<61> par
une valeur, e.g.'contact.pl' *}
{include file='$tpl_name.tpl'}
2004-04-13 15:43:47 +00:00
2005-12-01 20:28:15 +00:00
{include file='page_footer.tpl'}
2005-09-03 08:53:14 +00:00
</body>
</html>
]]>
</programlisting>
2004-05-23 15:44:59 +00:00
</example>
<example>
2006-10-01 11:18:39 +00:00
<title>Fonction {include}, passage de variables</title>
2005-09-03 08:53:14 +00:00
<programlisting>
2005-05-24 20:46:11 +00:00
<![CDATA[
2006-10-01 11:18:39 +00:00
{include file='links.tpl' title='Newest links' links=$link_array}
{* body of template goes here *}
{include file='footer.tpl' foo='bar'}
2005-09-03 08:53:14 +00:00
]]>
</programlisting>
2006-10-01 11:18:39 +00:00
<para>Le template ci-dessus inclut l'exemple <filename>links.tpl</filename></para>
2005-09-03 08:53:14 +00:00
<programlisting>
2006-10-01 11:18:39 +00:00
<![CDATA[
<div id="box">
<h3>{$title}{/h3>
<ul>
{foreach from=$links item=l}
.. faites quelques choses ici ...
</foreach}
</ul>
</div>
2005-09-03 08:53:14 +00:00
]]>
</programlisting>
</example>
<example>
<title>{include} et assignement <20> une variable</title>
2006-10-01 11:18:39 +00:00
<para>Cet exemple assigne le contenu de <filename>nav.tpl</filename> <20> la variable
<varname>$navbar</varname>, qui est alors affich<63>e en haut et en bas de la page.
2005-09-03 08:53:14 +00:00
</para>
<programlisting>
<![CDATA[
<body>
2005-12-01 20:28:15 +00:00
{include file='nav.tpl' assign=navbar}
2006-10-01 11:18:39 +00:00
{include file='header.tpl' title='Smarty is cool'}
2005-09-03 08:53:14 +00:00
{$navbar}
2006-10-01 11:18:39 +00:00
{* le corps du template va ici *}
2005-09-03 08:53:14 +00:00
{$navbar}
2006-10-01 11:18:39 +00:00
{include file='footer.tpl'}
2005-09-03 08:53:14 +00:00
</body>
2005-05-24 20:46:11 +00:00
]]>
</programlisting>
2004-05-23 15:44:59 +00:00
</example>
<example>
2006-10-01 11:18:39 +00:00
<title>Divers {include}, exemple de ressource template</title>
2005-05-24 20:46:11 +00:00
<programlisting>
<![CDATA[
2004-04-13 15:43:47 +00:00
{* chemin absolu *}
2005-12-01 20:28:15 +00:00
{include file='/usr/local/include/templates/header.tpl'}
2004-04-13 15:43:47 +00:00
{* chemin absolu (m<>me chose) *}
2005-12-01 20:28:15 +00:00
{include file='file:/usr/local/include/templates/header.tpl'}
2004-04-13 15:43:47 +00:00
{* chemin absolu windows (DOIT utiliser le pr<70>fixe "file:") *}
2005-12-01 20:28:15 +00:00
{include file='file:C:/www/pub/templates/header.tpl'}
2004-04-13 15:43:47 +00:00
{* inclusion d'une ressource template "db" *}
2005-12-01 20:28:15 +00:00
{include file='db:header.tpl'}
{* inclusion d'un template $variable - eg $module = 'contacts' *}
{include file="$module.tpl"}
{* ne fonctionne pas avec des simples guillemets ie aucun substitution de variables *}
{include file='$module.tpl'}
2006-10-01 11:18:39 +00:00
{* include a multi $variable template - eg amber/links.view.tpl *}
{include file="$style_dir/$module.$view.tpl"}
2005-05-24 20:46:11 +00:00
]]>
</programlisting>
2004-05-23 15:44:59 +00:00
</example>
2005-05-24 20:46:11 +00:00
<para>
Voir aussi
2006-10-01 11:18:39 +00:00
<link linkend="language.function.include.php"><varname>{include_php}</varname></link>,
<link linkend="language.function.insert"><varname>{insert}</varname></link>,
<link linkend="language.function.php"><varname>{php}</varname></link>,
les <link linkend="template.resources">ressources de template</link> et
les <link linkend="tips.componentized.templates">templates composants</link>.
2005-05-24 20:46:11 +00:00
</para>
2004-04-13 15:43:47 +00:00
</sect1>
2005-05-26 18:10:32 +00:00
2004-04-13 15:43:47 +00:00
<!-- 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
2005-05-26 18:10:32 +00:00
-->