web-dev-qa-db-ja.com

twigテンプレートで「ティーザー」のようなエンティティビューモードをレンダリングするにはどうすればよいですか?

他のコンテンツを参照する1つのコンテンツにエンティティ参照フィールドがあります。

私が達成しようとしているのは、その参照をティーザー形式でプログラムで表示することです。

私はこのようなことができることを望んでいました:

{{ node.field_entity_ref.view('teaser') }}

しかし、それはうまくいきません。とにかく前処理を宣言する必要がありますか?もしそうなら、ベストプラクティスは何ですか?

7
pbonnefoi

ベストプラクティスは、UIの参照フィールドをティーザーとして設定し、それをノードテンプレートで使用することです。

{{ content.field_entity_ref }}

これがあなたのケースのオプションではない場合、おそらく前処理でいくつかのコードが必要になります。

しかし、はるかに簡単なのは、モジュール Twig Tweak を使用することです。これにより、前処理なしでノードをレンダリングできます。

{{ drupal_entity('node', node.field_entity_ref.0.target_id, 'teaser') }}
8
4k4