Scroll
Field types, widgets e formatters são plugins
В Drupal 8 все типы полей, виджеты и форматтеры являются плагинами.
Они автоматически обнаруживаются, если размещены в ожидаемой структуре каталогов и используют корректную аннотацию.
Структура каталогов для модуля, который реализует все три компонента, выглядит следующим образом:
foo_bar_fields
- foo_bar_fields.info.yml
- src/
- Plugin/
- Field/
- FieldType/
- FooItem.php
- FieldFormatter/
- FooBarFormatter.php
- FieldWidget/
- FooBarWidget.php
- FieldType/
- Field/
- Plugin/
В этом руководстве мы создадим собственный тип поля, форматтер и виджет поля, которые генерируют случайную строку и отображают её.
Модуль будет называться random и иметь следующую структуру:
random
- random.info.yml
- src/
- Plugin/
- Field/
- FieldType/
- RandomItem.php
- FieldFormatter/
- RandomDefaultFormatter.php
- FieldWidget/
- RandomDefaultWidget.php
- FieldType/
- Field/
- Plugin/