Çeviri sözdizimi
Çeviri sözdizimi
Çeviri alanları
Kısayollar, belirli bağlamlara göre çevirilere erişim sağlar.
// Tasarım ile ilgili (HTML meta etiketleri ve ana sayfa çerçevesi)
{{ '@layout::meta.description' | trans }}
// Sayfa ile ilgili (sayfa gövdesi veya modal gibi)
{{ '@page::page_title' | trans }}
Dahil etmeler
Bir çeviri dosyasında tekrar eden metni azaltmak önemlidir. Sihirli anahtarlar, bir dosyadan diğerine dahil etmeler yapmaya olanak tanır; iç sözdizimi @folder.file::key.sub_key kullanılır.
Eğer anahtar veya anahtar ağacı aynıysa, % anahtar kelimesi ile birleştirebilirsiniz.
# 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::%'
Uzantılar
Bir dosyadaki anahtarların çoğu başka bir dosyayla aynıysa, tüm anahtarları yeniden kullanmak ve yalnızca yeni olanları eklemek için ~extends sözdizimini kullanmak daha basittir.
# translation-file-two.en.yml
~extends: '@translation-file-one'
Önbellekleme
Çeviri dosyaları, performansı korumak için çözülür ve önbelleğe alınır.
Javascript
Çeviriler dinamik kullanım için Javascript'e aktarılabilir.
// template.html.twig
trans_js('@page::javascript.*')
// Hello Javascript!
app.layout.page.trans('@page::javascript.demo_text');