Haben Sie sich jemals gefragt, wie Sie in WordPress Benutzerrollen anhand bestimmter Kriterien zuweisen können? Dies kann für Websites, die eindeutige Rollen auf der Grundlage von Benutzeraktionen, Mitgliedschaftsstatus oder anderen Kriterien benötigen, unglaublich nützlich sein.
Während WPForms und das Addon für die Benutzerregistrierung leistungsstarke Werkzeuge für die Erstellung von Registrierungsformularen sind, müssen Sie manchmal Benutzerrollen dynamisch auf der Grundlage bestimmter Bedingungen zuweisen.
In dieser Anleitung zeige ich Ihnen, wie Sie in WordPress mit WPForms Benutzerrollen bedingt zuweisen können.
Verstehen der WordPress-Benutzerrollen und -Fähigkeiten
WordPress verfügt über mehrere integrierte Rollen. Unten habe ich die Standard-Benutzerrollen hervorgehoben, die WordPress unterstützt:
- Verwalter: Voller Zugriff auf das Backend der Website. Diese Rolle kann Aktivitäten wie das Hinzufügen neuer Benutzer, die Bearbeitung von Benutzerrollen, die Installation von Plugins und Themes usw. durchführen.
- Herausgeber: Kann Inhalte verwalten und veröffentlichen, auch solche, die von anderen geschrieben wurden. Die Rolle ist oft auf postbezogene Aktivitäten beschränkt.
- Autor: Mit der Autorenrolle in WordPress können Benutzer nur ihre eigenen Beiträge veröffentlichen und verwalten.
- Mitwirkender: In WordPress kann die Contributor-Rolle ihre Beiträge schreiben und verwalten, aber nicht veröffentlichen.
- Abonnent: Hat einen begrenzten Zugang, normalerweise zum Lesen oder Kommentieren.
Jede Rolle hat eine Reihe von "Fähigkeiten", die bestimmen, was Benutzer tun können und was nicht. Es ist wichtig, dass Sie sich mit den Funktionen der WordPress-Benutzerrollen vertraut machen, damit Sie wissen, welche Rechte die Benutzer bei der Registrierung auf Ihrer Website erhalten. Ich empfehle den WPBeginner-Leitfaden, wenn Sie mehr über Benutzerrollen und -funktionen in WordPress erfahren möchten.
Wie man in WordPress Benutzerrollen bedingt zuweist
Hier finden Sie eine Schritt-für-Schritt-Anleitung, wie Sie in WordPress Benutzerrollen bedingt zuweisen können.
- Schritt 1: Installieren und aktivieren Sie das WPForms Plugin
- Schritt 2: Installieren und konfigurieren Sie das Addon zur Benutzerregistrierung
- Schritt 3: Snippet für die bedingte Zuweisung der Benutzerrolle hinzufügen
- Schritt 4: Testen des Formulars zur bedingten Zuweisung von Benutzerrollen
- Schritt 5: Veröffentlichen Sie Ihr WordPress-Registrierungsformular
Schritt 1: Installieren und aktivieren Sie das WPForms Plugin
WPForms ist das beste Plugin für die Erstellung von einfachen und erweiterten Formularen in WordPress.
Von einfachen Kontaktformularen bis hin zu fortgeschrittenen Funktionen wie bedingter Logik ist es ein zuverlässiges Tool, das sich für mich auf mehreren Websites bewährt hat.
Die Pro-Lizenz von WPForms beinhaltet den Zugriff auf das Addon User Registration, mit dem Sie Registrierungs- und Anmeldeformulare auf Ihrer WordPress-Website erstellen können.

Sobald Sie die Pro-Lizenz erworben haben, sollten Sie WPForms auf Ihrer WordPress-Website installieren und aktivieren. Wenn dies Ihr erstes Mal ist, lesen Sie diese Anleitung, um zu erfahren , wie Sie WPForms installieren.
Erstellen Sie jetzt Ihr Benutzerregistrierungsformular
Schritt 2: Installieren und konfigurieren Sie das Addon zur Benutzerregistrierung
Nachdem Sie das WPForms-Plugin installiert haben, müssen Sie auch das Addon für die Benutzerregistrierung installieren.
Um das Addon zu installieren, gehen Sie in den WordPress-Administrationsbereich und gehen Sie zu WPForms " Addons. Scrollen Sie dann nach unten, bis Sie das User Registration Addon finden, oder verwenden Sie die Suchleiste. Wenn Sie es gefunden haben, klicken Sie auf Addon installieren.

Sobald Sie das Addon zur Benutzerregistrierung auf Ihrer Website installiert und aktiviert haben, können Sie Ihr Registrierungsformular erstellen.
Ihr Formular erstellen
Sie können Ihr Formular von Grund auf neu erstellen oder unsere Vorlage für das Benutzerregistrierungsformular verwenden, um den Erstellungsprozess zu beschleunigen. Für dieses Tutorial verwenden wir die Vorlage für das Benutzerregistrierungsformular. Um auf diese Vorlage zuzugreifen, navigieren Sie zu WPForms " Add New. Wählen Sie dann Addon Templates aus dem Menü in der Seitenleiste.

Klicken Sie hier auf die Schaltfläche Vorlage verwenden, um die Vorlage für das Benutzerregistrierungsformular aufzurufen.

Dadurch werden Sie zum Formularersteller weitergeleitet, wo Sie die Vorlage weiter anpassen können.

Fügen Sie im Formularersteller ein Auswahlfeld zu Ihrem Formular hinzu. In diesem Tutorial werde ich das Dropdown-Feld mit 2 Optionen hinzufügen: Lehrer und Schüler.

Ich werde auch die Option " Erforderlich" aktivieren, damit die Benutzer bei der Registrierung einen Kontotyp auswählen müssen.

Notieren Sie sich die ID für das Dropdown-Feld, da wir sie im nächsten Schritt benötigen.

Nachdem Sie die Felder hinzugefügt und die Feldoptionen angepasst haben, gehen Sie zu Einstellungen " Benutzerregistrierung, um auf weitere Einstellungen für das Addon zuzugreifen.

Wenn Sie die Vorlage für das Benutzerregistrierungsformular verwendet haben, ist die Zuordnung aller Felder bereits abgeschlossen. Wenn Sie Ihr Registrierungsformular jedoch von Grund auf neu erstellen, müssen Sie Ihre Formularfelder den WordPress-Benutzermetadaten zuordnen.

Standardmäßig ist der Abschnitt " Benutzerrollen" auf "Abonnent" eingestellt. Um die Rollenzuweisung brauchen Sie sich vorerst nicht zu kümmern, da diese mit bedingter Logik erfolgt. Beachten Sie jedoch, dass dies die Standardrolle ist, die den Benutzern zugewiesen wird, wenn das Snippet auf Ihrer Website nicht richtig funktioniert.

Wenn Sie mit der Anpassung Ihres Formulars fertig sind, klicken Sie auf die Schaltfläche Speichern, um Ihre Änderungen zu speichern.

Schritt 3: Snippet für die bedingte Zuweisung der Benutzerrolle hinzufügen
WPForms unterstützt derzeit nicht die Zuweisung von Benutzerrollen basierend auf Eingaben aus anderen Feldern standardmäßig. Mit einem benutzerdefinierten PHP-Snippet können Sie jedoch Ihr Registrierungsformular anpassen, um Benutzerrollen basierend auf Formulareingaben bedingt zuzuweisen.
In unserem Beispiel prüfen wir das Dropdown-Feld, das wir dem Anmeldeformular hinzugefügt haben. Wenn der Benutzer Lehrer als Kontotyp auswählt, weisen wir ihm die Rolle eines Redakteurs zu. Wählt er Student, weist das Snippet ihm eine Autorenrolle zu.
Um fortzufahren, kopieren Sie das unten stehende Snippet und fügen es in Ihre Website ein. Ich empfehle die Verwendung des WPCode Plugin, um das Snippet zu Ihrer Website hinzuzufügen. Dieses Plugin macht es einfach, benutzerdefinierte Code-Snippets zu WordPress-Seiten hinzuzufügen, ohne sich mit der functions.php
Datei oder die Sorge, die Website zu zerstören.
Einzelheiten zur Verwendung des WPCode-Plugins finden Sie in unserem Tutorial zum Hinzufügen benutzerdefinierter Snippets zu WordPress.
Code Erläuterung
Das obige Snippet verwendet die wpforms_user_registration_process_registration_get_data
Filter, um Benutzerdaten zu erfassen, nachdem sie Ihr Registrierungsformular abgeschickt haben. Wir überprüfen das Dropdown-Feld im Formular und weisen dem Benutzer auf der Grundlage seiner Eingaben eine Rolle zu.
Wir haben das Snippet so eingestellt, dass es nur mit dem Formular mit der ID 13 funktioniert. Dies entspricht der ID meines Registrierungsformulars. Sie müssen diese ID aktualisieren, damit sie mit der ID Ihres Formulars übereinstimmt. Um die ID Ihres Formulars zu ermitteln, gehen Sie zu WPForms " All Forms und suchen Sie in der Spalte Shortcode. Die Zahl im Shortcode ist die ID des Formulars.

Auch die $role_field_id
die die ID des Dropdown-Feldes ist, ist im obigen Code auf 6 gesetzt. Sie müssen sie ebenfalls ersetzen, damit sie mit der des Dropdown-Feldes übereinstimmt. Erinnern Sie sich, dass ich Sie gebeten habe, sich die ID des Dropdown-Feldes. Hier werden wir den Wert verwenden.
Die $role_mapping
Array wird die Zuordnung für die Werte der Dropdown-Felder definiert. Die Option Lehrer entspricht der Rolle Editor in WordPress, während die Option Student der Benutzerrolle Autor entspricht. Sie können je nach Anzahl der Optionen in Ihrem Registrierungsformular weitere Schlüssel-Wert-Paare hinzufügen.
Profi-Tipp
Die Zuordnung der Felder " Student" und " Teacher" im obigen Ausschnitt entspricht den Optionen, die ich beim Anpassen des Registrierungsformulars im Dropdown-Feld angegeben habe. Wenn sich die Optionen in Ihrem Dropdown-Feld von meinen unterscheiden, stellen Sie sicher, dass Sie die Schlüsselpaare im Array $role_mapping aktualisieren, damit sie mit den Werten übereinstimmen, die Sie in Ihrem Formular verwendet haben.
Wir verwenden den mit der Benutzerrolle verbundenen Slug, um sie im Snippet zuzuordnen. Zum Beispiel entspricht "editor" der Rolle "Editor" in WordPress. Unten habe ich die Standard-WordPress-Benutzerrollen und ihre Slugs hervorgehoben:
- Verwalter - 'Verwalter'
- Herausgeber - 'editor'
- Autor - 'Autor'
- Mitwirkende - 'Mitwirkende'
- Abonnent - 'Abonnent'
Schritt 4: Testen des Formulars zur bedingten Zuweisung von Benutzerrollen
Der nächste Schritt nach dem Hinzufügen des Snippets besteht darin, das Formular zu testen, um sicherzustellen, dass es ordnungsgemäß funktioniert, bevor Sie es an Ihre Benutzer weitergeben. Zu diesem Zweck empfehle ich, einen Testeintrag einzureichen, um zu sehen, ob die Benutzerrolle dynamisch eingestellt ist.
Ich übermittle eine Testanmeldung in meinem Formular und setze das Feld Kontotyp auf Lehrer.

Um das Benutzerkonto im WordPress-Administrationsbereich zu überprüfen, gehen Sie zu Benutzer " Alle Benutzer. Hier sehen Sie alle Benutzerkonten auf Ihrer Website. Da ich beim Ausfüllen des Registrierungsformulars "Lehrer" ausgewählt habe, ist die Rolle des Testbenutzers dynamisch auf " Redakteur" eingestellt.

Wenn Sie Nutzern die Möglichkeit geben, ihre Rolle am Frontend zu wählen, sollten Sie bedenken, dass Sie nicht kontrollieren können, welche Optionen die Nutzer auswählen. In unserer Implementierung kann ein Schüler zum Beispiel immer noch den Kontotyp "Lehrer" wählen, und das Formular wird trotzdem eingereicht.
Sie können unser Addon Form Locker verwenden, um den Zugang zu Ihrem Registrierungsformular zu beschränken. Dadurch wird sichergestellt, dass nur Benutzer mit einem bestimmten Passwort auf das Formular zugreifen können.
Alternativ dazu können Sie die Benutzeraktivierung für das Registrierungsformular aktivieren, indem Sie im Formularersteller zu Einstellungen " Benutzerregistrierung navigieren. Aktivieren Sie dann die Option "Benutzeraktivierung aktivieren" und wählen Sie die Methode "Manuelle Genehmigung".

Auf diese Weise überprüft der Website-Administrator manuell jede Benutzerregistrierung und genehmigt die Benutzerkonten, wenn sie Ihren Anforderungen entsprechen. Sie können bestätigen, ob der Benutzer den richtigen Kontotyp gewählt hat, bevor Sie sein Konto genehmigen.
Lesen Sie auch: Sicherheit beim Hochladen von Dateien: Die besten Tipps für Online-Formulare
Schritt 5: Veröffentlichen Sie Ihr WordPress-Registrierungsformular
Zum Abschluss fügen wir das Anmeldeformular zu einer Seite hinzu. Bearbeiten Sie dazu das Formular, um auf den Formularersteller zuzugreifen. Klicken Sie dann auf die Schaltfläche Einbetten in der oberen rechten Ecke der Formularerstellungsseite.

Sie haben die Möglichkeit, Ihr Formular auf einer neuen oder bestehenden Seite zu veröffentlichen. Für diese Anleitung wähle ich die Option Neue Seite erstellen.

Geben Sie Ihrer neuen Seite einen Namen und klicken Sie auf Los geht's.

Sie werden zum WordPress-Seiteneditor weitergeleitet, in dem Ihr Formular auf der Seite eingebettet ist. Klicken Sie auf die Schaltfläche Veröffentlichen, um Ihre Seite zu veröffentlichen.

Wenn Sie diese Seite im Frontend aufrufen, werden Sie sehen, dass Sie ein voll funktionsfähiges Benutzerregistrierungsformular haben. Beachten Sie, dass es auch möglich ist, Ihre Formulare mit einem Shortcode oder Widget einzubetten.
FAQs - Wie man Benutzerrollen bedingt zuweist
Dies sind die Antworten auf einige der häufigsten Fragen, die wir zur bedingten Zuweisung von Benutzerrollen in WordPress erhalten.
Kann ich mehrere Benutzerrollen bedingt zuweisen?
Nein, WordPress Core unterstützt standardmäßig nur eine Rolle pro Benutzer. Sie können jedoch Plugins wie User Role Editor verwenden, um manuell mehrere Rollen zuzuweisen.
Sind bestehende Benutzer betroffen, wenn ich die bedingte Zuweisung von Benutzerrollen einführe?
Nein, dies betrifft nur neue Benutzerregistrierungen über WPForms. Die Rollen bestehender Benutzer bleiben unverändert.
Wie erstelle ich eine benutzerdefinierte Benutzerrolle in WordPress?
Der einfachste Weg, dies zu erreichen, ist ein WordPress-Plugin. Mit dem Members-Plugin können Sie neue Benutzerrollen auf Ihrer Website hinzufügen und die Fähigkeiten der einzelnen Rollen anpassen. Die neue Rolle, die Sie erstellen, wird in der Dropdown-Liste Benutzerrollen angezeigt, wenn Sie das Addon Benutzerregistrierung von WPForms anpassen.
Warum funktioniert das Snippet auf meiner Website nicht?
Dies kann vorkommen, wenn die Formular- oder Feld-ID nicht mit der ID Ihres Registrierungsformulars übereinstimmt. Stellen Sie sicher, dass Sie das Snippet mit Ihren Formular- und Feld-IDs aktualisieren.
Auch, wenn die Optionen auf dem Dropdown-Feld nicht mit den Rollen, die in dem Snippet, WPForms wird der Benutzer die Standard-Rolle, die bei der Konfiguration der User Registration Addon.
Passen Sie als nächstes den Stil Ihres Registrierungsformulars an
Jetzt haben Sie ein funktionierendes Registrierungsformular, das die Benutzerrollen dynamisch auf der Grundlage der Eingaben in den Feldern Ihres Formulars zuweist. Ich habe Ihnen gezeigt, wie Sie das Registrierungsformular auf dem Frontend Ihrer Website anzeigen können. Aber wussten Sie, dass Sie noch einen Schritt weiter gehen und Ihr Formular verschönern können? Mit WPForms können Sie Ihre WordPress-Formulare gestalten, ohne CSS schreiben zu müssen.
Sie können auch eine benutzerdefinierte Anmeldeseite mit dem Logo Ihrer Website erstellen, auf der sich die Benutzer bei ihren Konten anmelden können.
Gestalten Sie Ihr WordPress-Formular jetzt
Sind Sie bereit, Ihr Formular zu erstellen? Starten Sie noch heute mit dem einfachsten WordPress-Formularerstellungs-Plugin. WPForms Pro enthält viele kostenlose Vorlagen und bietet eine 14-tägige Geld-zurück-Garantie.
Wenn dieser Artikel Ihnen geholfen hat, folgen Sie uns bitte auf Facebook und Twitter für weitere kostenlose WordPress-Tutorials und -Anleitungen.