Fonctions natives
<body> {include file='nav.tpl' assign=navbar} {include file='header.tpl' title='Smarty is cool'} {$navbar} {* le corps du template va ici *} {$navbar} {include file='footer.tpl'} </body>
Exemple 7.20. Divers {include}, exemple de ressource template {* chemin absolu *} {include file='/usr/local/include/templates/header.tpl'} {* chemin absolu (même chose) *} {include file='file:/usr/local/include/templates/header.tpl'} {* chemin absolu windows (DOIT utiliser le préfixe "file:") *} {include file='file:C:/www/pub/templates/header.tpl'} {* inclusion d'une ressource template "db" *} {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'} {* include a multi $variable template - eg amber/links.view.tpl *} {include file="$style_dir/$module.$view.tpl"}
Voir aussi {include_php}, {insert}, {php}, les ressources de template et les templates composants.
{include_php} Notes techniques: {include_php} est presque obsolète dans Smarty. Vous pouvez obtenir des résultats équivalents en utilisant les fonctions utilisateur. La seule raison qui peut vous pousser à utiliser {include_php} est que vous avez besoin de mettre une de vos fonction en quarantaine vis à vis du répertoire plugins/ ou de votre application. Reportez-vous à l'exemple des templates composants pour plus de détails. Nom attribut
Type
Requis
Défaut
Description
file
chaîne de caractère
oui
n/a
Le nom du fichier PHP à inclure
once
boléen
Non
TRUE
Inclure plusieurs fois ou non le fichier PHP si plusieurs demandes d'inclusions sont faîtes.
assign
chaîne de caractère
Non
n/a
le nom de la variable PHP dans laquelle la sortie sera assignée plutôt que directement affichée.
Les balises {include_php} sont utilisées pour inclure directement un script PHP dans vos templates. Si $security est activé, alors le script à exécuter doit être placé dans le chemin $trusted_dir. La balise {include_php} attends l'attribut file, 53