0

我在(父)段落中有一个实体引用字段,它引用了多个子段落。

是否可以访问儿童(引用段落)树枝模板中引用段落的字段值?

实际上,我只是想计算引用项目的树枝模板本身之一中的总引用项目。因此,如果您愿意,我想计算它的兄弟姐妹 + 1。

我知道我可以在一个模块中对此进行预处理,但我想知道这在 twig 中是否可行。

4

2 回答 2

3

在树枝中:

{% set paragraph_parent = paragraph.getParentEntity() %}
{% set width = paragraph_parent.field_width.0.value %}

<div class="{{ width }}">{{ content.field_images }}</div>
于 2019-11-08T14:54:35.560 回答
0

由于没有对这个问题的回应,我不得不假设这在 Twig 中是不可能的,但想通过模块快速分享提到的解决方法......

getParentEntity()

是你的朋友。

使引用元素的计数可用的简短示例...

/* implements hook_preprocess_paragraph() (paragraph type product_teaser) */
function mymodule_preprocess_paragraph__product_teaser(&$variables) {

  /* makes paragraph siblings count (+ 1/self) available to template */
  $siblings_total = 1;      

  $paragraph = $variables['paragraph'];
  $parent_paragraph = $paragraph->getParentEntity();  

  if ( ( isset($parent_paragraph) ) && ( $parent_paragraph->hasField('field_paragraph_reference') ) ) {

    $field_content = $parent_paragraph->get('field_paragraph_reference')->getValue();

    if ( isset($field_content[0]['target_id']) ) {
      $siblings_total = count($field_content);
    }

  }

  $variables['mymodule_theming_sources']['siblings_total'] = $siblings_total;

}
于 2018-09-15T19:50:18.200 回答