web-dev-qa-db-ja.com

Twigテンプレートで文字列を翻訳するにはどうすればよいですか?

私は(私の最初の)Drupal 8プロジェクトの魔女に取り組んでいます。多言語サイトです。 Drupal 8は、コンテンツ翻訳のネイティブサポートの面で本当に役立ちます。ただし、テーマ.Twigテンプレートファイルがexのように印刷される場合、いくつかの文字列に直接設定されたいくつかの文字列があります。

{{ 'Read more'|trans }}

Drupal 8のインストールで、このような文字列の翻訳を処理する場所に本当に行き詰まっています。

これらの文字列をサイトで現在選択されている言語に翻訳できるようにするには、どのような手順が必要ですか? Drupal 8コアに含まれているもの以外の追加モジュールが必要ですか?

私が取った手順:

  • コンテンツ翻訳およびインターフェース翻訳モジュールをアクティブ化
  • {{'続きを読む' | trans}}のようなTwig文字列を追加しました
  • フラッシュされたキャッシュと文字列を含む更新されたページ
  • 結果のない文字列についてadmin/config/regional/translateを確認しました
32
Henkealg

それらをピックアップさせるには、英語以外の言語でページにアクセスする必要があります。それで十分でしょう。

34
Berdir

tフィルターを使用します。

{{ 'translate me'|t }}

https://www.drupal.org/docs/8/theming/twig/filters-modifying-variables-in-twig-templates

17
featherbelly

{% trans %} Twigタグ、Drupal 8で利用可能:

{% trans %}
  Submitted by {{ author.username }} on {{ node.created }}
{% endtrans %}

詳細については、次のリンクを参照してください。 http://getlevelten.com/blog/mark-carver/drupal-8-twig-templates-and-translations

15
dinopmi

これは、言語が明示的に提供される場合に使用した例とコンテキストです。このように、英語では「of」または「from」を意味するように、スティング「von」を2回翻訳することができました。

{{ 'von'|t([],{'langcode': currentLanguageCode,'context':'Seitenzahl PDF' }) }}

2
Rafael

Drupalカスタム翻訳文字列を「ユーザーインターフェース翻訳」と表示します。それらを翻訳するには、「ユーザーインターフェース翻訳」を拡張して、「ユーザーインターフェース翻訳」を構成に追加します。長いリストがあります文字列ですが、文字列は最後のセクションに配置する必要があります。

1
Toukonen

これは私を助けました

{{ 'Read more'|trans }}

この後、Drupalにピックアップさせるために、元の言語ではない言語でページにアクセスしてください。

/admin/config/regional/translate

それで全部です。

1
Hmad