我建議翻譯文本使用JMSTranslationBundle。使用JmsI18NBundle只能翻譯路線。
從一個特定的目錄中生成翻譯文件的應用程序/':
$ php app/console translation:extract en_US --config=app --output-format=xliff --dir=app
生成特定文件名的翻譯文件:
- 添加一個配置到jms_translation
# file: app/config/config.yml
jms_translation:
source_language: "%locale%"
configs:
app:
dirs: [%kernel.root_dir%, %kernel.root_dir%/../src]
output_dir: %kernel.root_dir%/Resources/translations
ignored_domains: [routes]
excluded_names: ["*TestCase.php", "*Test.php", "*.php"]
excluded_dirs: [cache, data, logs]
custom_exclude_from_app:
dirs: [%kernel.root_dir%]
output_dir: %kernel.root_dir%/Resources/translations
ignored_domains: [routes]
excluded_names: ["*TestCase.php", "*Test.php", "*.php", "backend.html.twig", "email_template.html.twig", "another_template_excluded.html.twig"]
excluded_dirs: [cache, data, logs]
- 執行以下命令:
。
$ php app/console translation:extract en_US --config=custom_exclude_from_app --output-format=xliff --dir=app