web-dev-qa-db-ja.com

別のテンプレート(またはテーマフック)からテンプレート変数にアクセスする

2つのテンプレート(および2つの対応する前処理フック)があり、1つは段落をレンダリングし、1つはこの段落からのアイテムをレンダリングしています。

アイテムのレンダリングテンプレート(またはアイテムの前処理フック)から親段落テンプレート(または前処理フック)で使用可能な変数にアクセスする方法

段落--paragraph-row.html.twig

{{ content.MyVARIABLE }}  //it works

フィールド--paragraph--paragraph-row2.html.twig

<div class="row">
  {% for item in items %}
     <div class="col-sm-{{ 12 // parent.MyVARIABLE  }}">
         {{ item }}
    </div>
{% endfor %}
</div>

ありがとう!

デビッド

3
deivh

他のテンプレートから変数に簡単にアクセスすることはできません。ただし、エンティティオブジェクトを使用してフィールド値にアクセスできます。

ネストされた段落の場合、親段落はelement['#object']にあります。

field--paragraph.html.twig

{{ element['#object'].field_my_field.value }}
2
4k4