O Smarty contém várias funções internas. Funções internas são parte integral da linguagem de template. Você não pode criar funções personalizadas com o mesmo nome de uma função interna, e também não pode modificar funções internas.
Nome do Atributo | Tipo | Obrigatório | Padrão | Descrição |
---|---|---|---|---|
name | string | Não | default | O nome do bloco capturado |
assign | string | Não | n/a | O nome da variável para dar o valor da saída capturada |
capture é usado para coletar toda a saída do template em uma variável ao invés de mostra-lo. Qualquer conteúdo entre {capture name="foo"} e {/capture} coletado na variável especificada no atributo name. O conteúdo capturado pode ser usado no template a partir da variável especial $smarty.capture.foo aonde foo é o valor passado para o atributo name. Se você não passar um atributo name, então será usado "default". Todos os comandos {capture} devem ter o seu {/capture}. Você pode aninhar(colocar um dentro de outro) comandos capture.
Nota Tecnica: Smarty 1.4.0 - 1.4.4 coloca o conteúdo capturado dentro da variável chamada $return. A partir do 1.4.5, este funcionamento foi mudado para usar o atributo name, então atualize os seus templates de acordo.
Cuidado |
Tenha cuidado quando capturar a saída do comando insert. Se você tiver o cache em on e você tiver comandos insert que você espera que funcione com conteúdo do cache, não capture este conteúdo. |