Documentação do Symfony - versão 3.1
Renderizada do repositório symfony-docs-pt-BR no Github
Algumas vezes você quer que uma variável esteja disponível em todas as templates que utiliza.
Isto é possível configurando o twig dentro do arquivo app/config/config.yml
:
1 2 3 4 5 | # app/config/config.yml
twig:
# ...
globals:
ga_tracking: UA-xxxxx-x
|
Agora a variável ga_tracking
está disponível em todas templates Twig e pode ser acessada
da seguinte forma.
1 | <p>Our google tracking code is: {{ ga_tracking }} </p>
|
É fácil! Você também pode utilizar do sistema de parâmetros (Parâmetros do Serviço), que permite você isolar e reutilizar o valor como a seguir.
1 2 3 | ; app/config/parameters.yml
[parameters]
ga_tracking: UA-xxxxx-x
|
1 2 3 4 | # app/config/config.yml
twig:
globals:
ga_tracking: %ga_tracking%
|
A mesma variável está disponível exatamente como antes.
Se a variável global que deseja definir é mais complexa, como um objeto por exemplo,
então você não poderá utilizar o método acima. Ao invés disso, precisa criar uma
extensão Twig (Twig Extension) e retornar
a variável global como uma das entradas no método getGlobals
.