📜  Drupal twig 获取实体引用字段的值 - Html (1)

📅  最后修改于: 2023-12-03 14:40:53.298000             🧑  作者: Mango

Drupal twig 获取实体引用字段的值 - Html

在 Drupal 中,实体引用字段是一种非常常见的字段类型,用于将一个实体链接到另一个实体。Twig 是 Drupal 8 中的默认模板引擎,它提供了一些变量和函数来访问实体引用字段的值。在本文中,我们将介绍如何在 Twig 模板中获取实体引用字段的值。

获取实体引用字段的值

在 Drupal 中,可以使用 content 变量来访问实体的字段。如果实体包含一个实体引用字段,可以通过 content.field_reference_field 来访问该字段。

例如,假设我们有一个名为 article 的内容类型,它包含一个名为 field_author 的实体引用字段,用于链接作者实体。要获取该字段的值,可以使用以下代码:

{% if content.field_author %}
  {% for author in content.field_author %}
    <a href="{{ author['#url'] }}">{{ author['#plain_text'] }}</a>,
  {% endfor %}
{% endif %}

在上面的代码中,我们使用了 content.field_author 变量来访问 field_author 字段的值。如果该字段包含多个实体引用,我们可以使用 for 循环来遍历所有的实体,并使用 author['#url']author['#plain_text'] 来访问链接和作者姓名。

获取实体引用字段的属性

实体引用字段除了实体本身以外,还可以包含其他的元数据信息。例如,您可以指定该字段应该链接到实体的哪个视图模式,以及该字段应该在视图中指向实体的哪个字段。

要获取实体引用字段的属性,可以使用 field 变量,并使用以下代码:

{% set author_reference = node.field_author.entity %}
{% set author_view_mode = 'full' %}
<a href="{{ author_reference.url({'view_mode': author_view_mode}) }}">{{ author_reference.label }}</a>

在上面的代码中,我们首先使用 node.field_author.entity 变量获取实体引用字段的实体。然后,我们声明一个变量 author_view_mode 来存储视图模式,并通过 url 函数来获取实体的链接。

结论

Twig 提供了一些强大的功能来访问和操作实体引用字段。使用上述方法,您可以轻松地检索和显示实体引用字段的值和属性。如果您有任何疑问或反馈,请随时在评论中提出。