{capture}{capture} est utilisé pour récupérer la sortie d'éléments dans
une variable au lieu de les afficher. Tout contenu situé entre
{capture name='foo'} et {/capture}
est intercepté dans une variable dont le nom est spécifié dans l'attribut
name.
Le contenu capturé peut être utilisé dans
le template par l'intermédiaire de la variable spéciale
$smarty.capture.foo
où foo est la valeur de l'attribut name.
Si vous ne donnez pas de valeur à l'attribut name, alors
default est utilisé en tant que nom, i.e.
$smarty.capture.default.
{capture} peut être imbriqué.
AttributTypeRequisDefautDescriptionnamestringnondefaultLe nom du bloc capturéassignstringnonn/aLe nom de la variable à laquelle la sortie sera assignéeAttention
Faîtes attention lorsque vous interceptez la sortie de commandes
{insert}.
Si vous avez configuré le cache pour que ce
dernier soit actif, et que vous avez des commandes {insert}
supposées s'exécuter dans un contenu en cache, ne tentez pas de capturer
ce contenu.
{capture} avec le nom de l'attribut
{$smarty.capture.banner}
{/if}
]]>
{capture} dans une variable de templateCet exemple démontre également la fonction
{popup}
Votre IP est {$smarty.server.REMOTE_ADDR}.
{/capture}
Aide
]]>
Voir aussi
$smarty.capture,
{eval},
{fetch},
fetch() et
{assign}.