滚动
9.10.4. Drupal 8 字段 API:Drupal 格式化器(Formatter)——在页面上显示数据
在本文中,我们将学习 字段格式化器(Field Formatters),它允许我们控制字段在页面上的显示方式。
在前面的文章中,我们创建了一个字段类型 Link。本文将讲解这些字段如何在页面上显示,以及哪个类负责这一过程。每个通过 Drupal 添加的字段都可以在页面上显示,并且可以在“显示管理(Manage display)”页面中编辑其显示设置。

在 Format(格式) 列中,你可以选择字段的显示方式。该列的内容来源于 字段格式化器类(Field Formatter classes)。我们来看一个来自核心模块 Link 的格式化器类,它用于在页面上显示链接:
core/modules/link/src/Plugin/Field/FieldFormatter/LinkFormatter.php
在类的注解(annotation)中,可以看到此格式化器所属的字段类型:
/**
* Plugin implementation of the 'link' formatter.
*
* @FieldFormatter(
* id = "link",
* label = @Translation("Link"),
* field_types = {
* "link"
* }
* )
*/
在这个文件中,我们最感兴趣的是 viewElements() 方法,它负责将数据输出到页面上。请注意,格式化器不会直接查询数据库,而是从变量 $items 中获取数据。