Looking for drupal Keywords? Try Ask4Keywords

drupalFeldformatierer


Einführung

Ein Feldformatierer gibt an, wie ein Feld in Drupal-Vorlagen dargestellt wird. Das von jedem Feld verwendete Formatierungsprogramm kann auf der Registerkarte Anzeige verwalten konfiguriert werden, die dem von Ihnen konfigurierten Entitätstyp zugeordnet ist.

Felder können je nach angezeigtem Anzeigemodus unterschiedliche Formatierungen haben. So können Sie steuern, wie ein Feld in verschiedenen Teilen Ihrer Website dargestellt wird.

Bemerkungen

Bei der Implementierung eines Field Formatter sind einige Dinge zu beachten.

Die Implementierung Ihres Formatierers muss sich in Ihrem Modul im Ordner src/Plugin/Field/FieldFormatter . Die Anmerkungen sind auch wichtig, da sie Ihr Modul identifizieren und auf welche Feldtypen es anwendbar ist.

In diesem Beispiel gilt dieses Formatierungsprogramm nur für Felder des Typs email . Sie können Ihren Formatierer bei Bedarf auf eine Reihe von Feldern anwenden. Wenn Ihr Formatierungsprogramm aus irgendeinem Grund auf E-Mail- und Datumsfelder anwendbar wäre:

field_type = {
  "email",
  "date",
}

Bei der ersten Implementierung von Feldformatierern mit Einstellungen bestand eine Gefahr darin, dass die Einstellungen nicht gespeichert wurden, wenn sie geändert wurden. Es gibt keine explizite Speichermethode. Die Lösung besteht darin, die Methode defaultSettings() zu implementieren und die defaultSettings() anzugeben, aus denen sich Ihr Konfigurationsformular zusammensetzt. Vergessen Sie auch nicht, den #default_value in der settingsForm Methode #default_value .

Wenn Sie eine bestimmte TWIG Vorlage für Ihre Formatter haben wollen ist es so einfach wie eine Konfiguration #theme Taste , während das Array in der Render Aufbau viewElements Methode dann in Ihrer .module Datei implementieren hook_theme

function obfuscator_field_formatter_theme() {
  return [
    'obfuscator_field_formatter' => [
      'variables' => array('title' => NULL, 'url' => NULL),
      'template' => 'obfuscator-field-formatter'
    ],
  ];
}

Erstellen Sie dann den templates im Stammverzeichnis Ihres Moduls und erstellen Sie eine Datei mit dem Namen obfuscator-field-formatter.twig.html in der Sie das gewünschte Markup ausgeben. In diesem Beispiel stehen die Variablen #title und #url zur Verfügung.

Feldformatierer Verwandte Beispiele