Vertalingsyntaxis
Vertalingsyntaxis
Vertaalgebieden
Sneltoetsen bieden toegang tot vertalingen in relatie tot bepaalde contexten.
// Relatief aan de lay-out (HTML meta-tags en hoofdpaginaframe)
{{ '@layout::meta.description' | trans }}
// Relatief aan de pagina (bijvoorbeeld de paginainhoud of een venster)
{{ '@page::page_title' | trans }}
Inclusies
Het is belangrijk om duplicaattekst in een vertaalbestand te verminderen. Magische sleutels maken inclusies van het ene bestand naar het andere mogelijk met de interne syntaxis @folder.file::key.sub_key.
Je kunt het combineren met het % sleutelwoord als de sleutel of sleutelboom hetzelfde is.
# translation-file-one.en.yml
example_key:
example_sub_key: Translation string
# translation-file-two.en.yml
example_key:
# Using this key resolves to the first file
# using the same key "example_key.example_sub_key"
example_sub_key: '@translation-file-one::%'
Uitbreidingen
Als de meeste sleutels in een bestand hetzelfde zijn als in een ander, is het eenvoudiger om de ~extends syntaxis te gebruiken om alle sleutels opnieuw te gebruiken en alleen de nieuwe toe te voegen.
# translation-file-two.en.yml
~extends: '@translation-file-one'
Caching
Vertalingsbestanden worden opgelost en gecached om de prestaties te behouden.
Javascript
Vertalingen kunnen naar Javascript worden doorgegeven voor dynamisch gebruik.
// template.html.twig
trans_js('@page::javascript.*')
// Hello Javascript!
app.layout.page.trans('@page::javascript.demo_text');