Back to top

Ereignis - Bedingung - Aktion: Erstellen eines benutzerdefinierten Workflows mit dem Drupal ECA-Modul

Ereignis - Bedingung - Aktion: hat eine Revolution in der Entwicklung von benutzerdefinierten Workflows in Drupal 9+ ausgelöst und ist ein flexibler und anpassbarer Ersatz für veraltete Drupal Rules geworden. Heute erforscht das Team von Drupfan, was es mit dem ECA-Modul auf sich hat und erklärt, wie Ihre Website davon profitieren kann. Bleiben Sie dran.

Was ist Ereignis - Bedingung - Aktion in Drupal?

Event - Condition - Action oder einfach ECA ist die leistungsstarke Drupal-Modulgruppe, die es Website-Betreibern ermöglicht, visuelle benutzerdefinierte Workflows zu entwickeln, ohne Code zu schreiben. Es kann jede Art von Geschäftslogik leicht handhaben und ermöglicht es auch anderen Personen in Ihrem Team, Workflows zu sehen und schnell zu verstehen.

Installieren von ECA

Um das Event - Condition - Action Modul zu installieren, schreiben Sie einfach folgendes in composer:

 

composer require drupal/eca

druupal module

Wie Sie aus dem Screenshot ersehen können, enthält ECA eine Reihe von Untermodulen, die jeweils für ihre Funktionalität verantwortlich sind. Aktivieren Sie sie nach Bedarf.

Um ECA effektiver zu nutzen, empfehlen wir die Installation des Moduls BPMNI.IO. Es bietet eine Schnittstelle für die Erstellung von Diagrammabläufen. Um das BPMNI.IO-Modul zu installieren, schreiben Sie diese Zeile in composer:

composer require drupal/bpmn_io

Die BPMN.iO-Schnittstelle sieht wie folgt aus:

 

Mit dieser visuellen Schnittstelle können Webentwickler Workflow-Diagramme erstellen und alle Teammitglieder können sie überprüfen, um sich mit der Geschäftslogik eines bestimmten Workflows vertraut zu machen.

Ereignis - Bedingung - Aktion Teilmodule

Das ECA-Modulpaket umfasst die folgenden Teilmodule:

  • ECA Access: Ereignisse und Aktionen zur Kontrolle des Zugriffs auf Entitäten und Felder
  • ECA Basis: Basisereignisse, -bedingungen und -aktionen
  • ECA-Cache: Aktionen zum Lesen, Schreiben oder Ungültigmachen von Cache-Elementen
  • ECA Konfig: Config-Ereignisse
  • ECA Inhalt: Content-Entity-Ereignisse, -Bedingungen und -Aktionen
  • ECA Endpunkt: Ereignisse, um Ihre eigenen Endpunkte/Routen zu definieren und Aktionen, um mit deren Anfragen und Antworten zu interagieren
  • ECA Formular: Formular-API-Ereignisse, -Bedingungen und -Aktionen
  • ECA Log: Ereignisse und Aktionen für Drupal-Logmeldungen
  • ECA Migrieren: Migrationsereignisse
  • ECA Verschiedenes: Verschiedene Ereignisse und Bedingungen von Drupal Core und dem Kernel

ECA Warteschlange: Ereignisse, Bedingungen und Aktionen für Vorgänge in der Warteschlange.

  • ECA Render: Ereignisse und Aktionen für die Arbeit mit der Render-API von Drupal für Blöcke, Views und alles rund um Themes und Twig
  • ECA User: Benutzerereignisse, -bedingungen und -aktionen
  • ECA Ansichten: Ausführen und Exportieren von Views-Abfrageergebnissen innerhalb von ECA
  • ECA Arbeitsablauf: Workflow-Aktionen für Inhaltsentitäten

Die Aktivierung eines dieser Submodule hängt davon ab, welche Funktionalität Ihr Projekt benötigt. Lesen Sie die Beschreibungen der einzelnen Module sorgfältig durch, um zu verstehen, für welche ECA-Funktion sie verantwortlich sind.

Aufbau von Arbeitsabläufen mit dem ECA Drupal Modul

Wie bereits erwähnt, ist die Verwendung des ECA-Moduls immer mit der BPMN.IO verbunden, da die BPMN.IO eine benutzerfreundliche Schnittstelle für die Erstellung von visuellen Workflows ist. Lassen Sie uns gemeinsam einen Workflow mit dem Modul Drupal Event - Condition - Action erstellen.

Gehen Sie zu "Konfiguration → Workflow → ECA" in der Verwaltungskonsole. Klicken Sie auf "+ Neues Modell hinzufügen", um einen neuen Workflow in der BPMN.IO-Schnittstelle zu erstellen.

Hier sehen Sie eine "Werkzeugleiste" zur Erstellung von Diagrammen.

 

  • Kreis bezieht sich auf Ereignisse.
  • Diamant bezieht sich auf Gateways (Gateways werden verwendet, um mehrere Bedingungen zu kombinieren und Kettenaktionen für ein Ereignis zu erstellen).
  • Rechteck bezieht sich auf Aktionen.
  • Pfeil bezieht sich auf Bedingungen (Pfeile verbinden Ereignisse und Aktionen).

 

Auf der rechten Seite der BPMN.IO-Schnittstelle finden Sie eine weitere Symbolleiste für das ECA-Prozessmanagement. Sie wird aktualisiert, je nachdem, welches Element Sie ausgewählt haben.

Lassen Sie uns einen Arbeitsablauf erstellen, um ECA in der Praxis zu sehen. Stellen Sie sich vor, wir haben eine Website mit Rezepten. Jeder Benutzer kann ein Rezept zu den Favoriten hinzufügen. Wir möchten, dass der Autor des Beitrags per E-Mail benachrichtigt wird, wenn ein Benutzer das Rezept zu den Favoriten hinzufügt. Der Autor muss bei der Erstellung des Knotens ein Häkchen setzen, wenn er benachrichtigt werden möchte. Die ECA für diesen Workflow sieht wie folgt aus:

Dieser Arbeitsablauf besteht aus den folgenden Elementen:

Das Ereignis (Rezept zu Favoriten hinzugefügt): löst den Workflow aus.

Die Bedingung (field_notify_author = TRUE): prüft, ob der Autor benachrichtigt werden möchte.

Zwei Kettenaktionen: laden den Autor des Knotens und benachrichtigen ihn per E-Mail.

ECA erlaubt es den Site-Buildern auch, Kommentare hinzuzufügen, um bestimmte Elemente des Workflows zu verdeutlichen.

Dies war nur ein kleines Beispiel für die Möglichkeiten von ECA. Wir hoffen, dass Sie einen kurzen Einblick in das Drupal Event - Condition - Action Modul und sein Potential für die Entwicklung von Workflows erhalten haben. Ausführlichere Richtlinien finden Sie auf ecaguide.org, einer vom ECA-Entwicklungsteam erstellten Website.

Resümee

Event - Condition - Action ist ein leistungsfähiges und sehr flexibles Werkzeug zur Erstellung von Workflows in Drupal. Da dieses Modul erst vor ein paar Jahren veröffentlicht wurde, können wir davon ausgehen, dass in Kürze noch mehr beeindruckende Funktionen hinzukommen werden.

Drupfan, Ihr vertrauenswürdiger Drupal-Webentwicklungspartner, ist hier, um Sie bei allem zu unterstützen, was mit Drupal zu tun hat, angefangen von der Einrichtung von Workflows bis hin zum Aufbau einer Website von Grund auf. Setzen Sie sich noch heute mit uns in Verbindung, um Ihr Projekt im Detail zu besprechen.