Inhaltsverzeichnis

Alle verfügbaren Field Types auflisten

Die Felder oder Eigenschaften einer Content Entity in Drupal 8 werden innerhalb der Entity Klasse in der baseFieldDefinitions Methode implementiert. Beispiel:

class Advertiser extends ContentEntityBase implements ContentEntityInterface {
  public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
    // Standard field, used as unique if primary index.
    $fields['id'] = BaseFieldDefinition::create('integer')
      ->setLabel(t('ID'))
      ->setDescription(t('The ID of the Advertiser entity.'))
      ->setReadOnly(TRUE);
 
    // Standard field, unique outside of the scope of the current project.
    $fields['uuid'] = BaseFieldDefinition::create('uuid')
      ->setLabel(t('UUID'))
      ->setDescription(t('The UUID of the Advertiser entity.'))
      ->setReadOnly(TRUE);
 
    return $fields;
  }
}

Verfügbare Feldtypen anzeigen

Damit man weiß, welche Feldtypen alle zur Verfügung stehen, die dann in BaseFieldDefinition::create() genutzt werden können, kann man sich diese mit folgendem Befehl auflisten lassen:

$types = Drupal::service('plugin.manager.field.field_type')->getDefinitions();
foreach ($types as $key => $value) {
  echo $key, "\";
}

Verfügbare Feldtypen in einem Standard Drupal

In einer Standard Drupal 8 Installation gibt es die folgenden Typen:

Da aber viele Contrib Module auch zusätzliche Typen implementieren, ist es immer nützlich, sich die verfügbaren Feldtypen für die eigene Installation anzeigen zu lassen.