Benutzerrollen bedingt in WordPress zuweisen

Benutzerrollen bedingt in WordPress zuweisen

Haben Sie sich jemals gefragt, wie Sie Benutzerrollen in WordPress bedingt basierend auf bestimmten Kriterien zuweisen können? Dies kann für Websites, die eindeutige Rollen basierend auf Benutzeraktionen, Mitgliedschaftsstatus oder anderen Kriterien erfordern, unglaublich nützlich sein.

Während WPForms und das User Registration Addon leistungsstarke Werkzeuge zur Erstellung von Registrierungsformularen sind, benötigen Sie manchmal eine dynamische Zuweisung von Benutzerrollen basierend auf spezifischen Bedingungen.

In diesem Leitfaden führe ich Sie durch die bedingte Zuweisung von Benutzerrollen in WordPress mit WPForms.

WordPress-Benutzerrollen und -Berechtigungen verstehen

WordPress verfügt über mehrere integrierte Rollen. Nachfolgend habe ich die Standard-Benutzerrollen hervorgehoben, die WordPress unterstützt:

  • Administrator: Vollständiger Zugriff auf das Backend der Website. Diese Rolle kann Aktivitäten wie das Hinzufügen neuer Benutzer, das Bearbeiten von Benutzerrollen, die Installation von Plugins und Themes usw. ausführen.
  • Redakteur: Kann Inhalte verwalten und veröffentlichen, auch Inhalte, die von anderen erstellt wurden. Die Rolle ist oft auf beitragbezogene Aktivitäten beschränkt.
  • Autor: Die Autorenrolle in WordPress ermöglicht es Benutzern, nur ihre eigenen Beiträge zu veröffentlichen und zu verwalten.
  • Mitarbeiter: In WordPress kann die Mitarbeiterrolle ihre Beiträge schreiben und verwalten, aber nicht veröffentlichen.
  • Abonnent: Hat eingeschränkten Zugriff, normalerweise zum Lesen oder Kommentieren.

Jede Rolle hat eine Reihe von „Berechtigungen“, die bestimmen, was Benutzer tun können und was nicht. Es ist wichtig, sich mit den Berechtigungen der WordPress-Benutzerrollen vertraut zu machen, damit Sie wissen, welche Berechtigungen Benutzer bei der Registrierung auf Ihrer Website erhalten. Ich empfehle Ihnen, den Leitfaden von WPBeginner zu lesen, wenn Sie mehr über Benutzerrollen und Berechtigungen in WordPress erfahren möchten.

Benutzerrollen bedingt in WordPress zuweisen

Hier ist eine Schritt-für-Schritt-Anleitung, wie Sie Benutzerrollen in WordPress bedingt zuweisen.

Schritt 1: WPForms-Plugin installieren und aktivieren

WPForms ist das beste Plugin zum Erstellen einfacher und fortgeschrittener Formulare in WordPress.

Von einfachen Kontaktformularen bis hin zu fortgeschritteneren Funktionen wie bedingter Logik ist es ein zuverlässiges Werkzeug, das für mich auf mehreren Websites gut funktioniert hat.

Die Pro-Lizenz von WPForms beinhaltet den Zugriff auf das User Registration Addon, mit dem Sie Registrierungs- und Anmeldeformulare auf Ihrer WordPress-Website erstellen können.

Die WPForms Preisseite.

Nachdem Sie die Pro-Lizenz erworben haben, sollten Sie WPForms auf Ihrer WordPress-Website installieren und aktivieren. Wenn dies das erste Mal ist, lesen Sie diesen Leitfaden, um zu erfahren, wie Sie WPForms installieren.

Erstellen Sie jetzt Ihr Benutzerregistrierungsformular

Schritt 2: User Registration Addon installieren und konfigurieren

Nach der Installation des WPForms-Plugins müssen Sie auch das User Registration Addon installieren.

Um das Addon zu installieren, rufen Sie den WordPress-Adminbereich auf 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.

Installieren Sie das Benutzerregistrierungs-Addon, um Benutzerrollen bedingt zuzuweisen

Sobald Sie das User Registration Addon auf Ihrer Website installiert und aktiviert haben, fahren Sie mit der Erstellung Ihres Registrierungsformulars fort.

Erstellen Ihres Formulars

Sie können Ihr Formular von Grund auf neu erstellen oder unsere Vorlage für Registrierungsformulare verwenden, um den Erstellungsprozess zu beschleunigen. Für dieses Tutorial verwenden wir die Vorlage für Registrierungsformulare. Um auf diese Vorlage zuzugreifen, navigieren Sie zu WPForms » Neu hinzufügen. Wählen Sie dann im Menü der Seitenleiste Addon-Vorlagen aus.

Zugriff auf Addon-Vorlagen

Klicken Sie von hier aus unter der Vorlage für Registrierungsformulare auf die Schaltfläche Vorlage verwenden.

Klicken Sie auf "Vorlage verwenden", um ein Benutzerregistrierungsformular zu erstellen

Dies führt Sie zum Formular-Generator, wo Sie die Vorlage weiter anpassen können.

Registrierungsformular zur bedingten Zuweisung von Benutzerrollen

Gehen Sie im Formular-Generator zum Feld für die Auswahlmöglichkeiten und fügen Sie es Ihrem Formular hinzu. Für dieses Tutorial füge ich das Dropdown-Feld mit 2 Optionen hinzu: Lehrer und Schüler.

Fügen Sie das Dropdown-Feld hinzu, um den Kontotyp auszuwählen

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

Machen Sie das Feld für den Kontotyp erforderlich, um Benutzerrollen bedingt zuzuweisen

Beachten Sie 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 zusätzliche Einstellungen für das Addon zuzugreifen.

Einstellungen des Benutzerregistrierungs-Addons aufrufen

Wenn Sie die Vorlage für Registrierungsformulare verwendet haben, sind alle Feldzuordnungen abgeschlossen. Wenn Sie Ihr Registrierungsformular jedoch von Grund auf neu erstellen, müssen Sie Ihre Formularfelder den WordPress-Benutzer-Metadaten zuordnen.

Feldzuordnung im Benutzerregistrierungs-Addon

Standardmäßig ist der Abschnitt Benutzerrollen auf Abonnent eingestellt. Machen Sie sich vorerst keine Sorgen um die Rollenzuweisung, da dies über bedingte Logik erfolgen wird. Beachten Sie jedoch, dass dies die Standardrolle ist, die Benutzern zugewiesen wird, wenn der Snippet auf Ihrer Website nicht richtig funktioniert.

Zuordnung von Benutzerrollen

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

Änderungen speichern

Schritt 3: Snippet hinzufügen, um Benutzerrollen bedingt zuzuweisen

WPForms unterstützt derzeit nicht standardmäßig die Zuweisung von Benutzerrollen basierend auf Eingaben aus anderen Feldern. Mit einem benutzerdefinierten PHP-Snippet können Sie jedoch Ihr Registrierungsformular anpassen, um Benutzerrollen bedingt basierend auf Formulareingaben zuzuweisen.

In unserem Beispiel legen wir fest, dass das Dropdown-Feld, das wir dem Registrierungsformular hinzugefügt haben, überprüft wird. Wenn der Benutzer Lehrer als Kontotyp auswählt, weisen wir dem Benutzer die Rolle Editor zu. Wenn er Schüler auswählt, weist der Snippet ihm die Rolle Autor zu.

Achtung!

Dieser Abschnitt enthält benutzerdefinierte PHP-Snippets und richtet sich an technisch versierte Benutzer mit grundlegenden PHP-Kenntnissen. Sie können jedoch auch als Anfänger folgen, da Sie größtenteils nur die Formular-ID und die ID des Dropdown-Felds aktualisieren müssen.

Um fortzufahren, kopieren Sie den folgenden Codeausschnitt und fügen Sie ihn auf Ihrer Website ein. Ich empfehle die Verwendung des WPCode-Plugins, um den Codeausschnitt zu Ihrer Website hinzuzufügen. Dieses Plugin erleichtert das Hinzufügen benutzerdefinierter Codeausschnitte zu WordPress-Websites, ohne dass Sie die functions.php -Datei bearbeiten oder sich Sorgen machen müssen, die Website zu beschädigen.

Details zur Verwendung des WPCode-Plugins finden Sie in unserem Tutorial zum Hinzufügen benutzerdefinierter Codeausschnitte zu WordPress.

Code-Erklärung

Der obige Codeausschnitt verwendet den wpforms_user_registration_process_registration_get_data-Filter, um Benutzerdaten zu erfassen, nachdem sie Ihr Registrierungsformular übermittelt haben. Wir überprüfen das Dropdown-Feld im Formular und weisen dem Benutzer basierend auf seiner Eingabe eine Rolle zu.

Wir haben den Codeausschnitt so eingestellt, dass er nur für das Formular mit der ID 13 funktioniert. Dies entspricht der ID meines Registrierungsformulars. Sie müssen diese ID aktualisieren, um sie an die ID Ihres Formulars anzupassen. Um die ID Ihres Formulars zu erhalten, gehen Sie zu WPForms » Alle Formulare und schauen Sie unter der Spalte Shortcode nach. Die Zahl im Shortcode ist die ID des Formulars.

Formular-ID abrufen, um Benutzerrollen in WordPress bedingt zuzuweisen

Außerdem ist die Variable $role_field_id, die die ID des Dropdown-Felds ist, im obigen Code auf 6 gesetzt. Sie müssen sie ebenfalls ersetzen, um sie an die Ihres Dropdown-Felds anzupassen. Denken Sie daran, dass ich Sie gebeten habe, sich die ID des Dropdown-Felds zu notieren. Hier werden wir den Wert verwenden.

Das Array $role_mapping ist der Ort, an dem wir die Zuordnung für die Werte des Dropdown-Felds definieren. Lehrer wird der Rolle Editor in WordPress zugeordnet, während die Option Student der Benutzerrolle Autor zugeordnet wird. Sie können je nach Anzahl der Optionen in Ihrem Registrierungsformular weitere Schlüssel-Wert-Paare hinzufügen.

Profi-Tipp

Die Feldzuordnung Student und Lehrer im obigen Codeausschnitt entspricht den Optionen, die ich beim Anpassen des Registrierungsformulars im Dropdown-Feld angegeben habe. Wenn die Optionen in Ihrem Dropdown-Feld von meinen abweichen, stellen Sie sicher, dass Sie die Schlüsselpaare im $role_mapping-Array aktualisieren, damit sie mit den von Ihnen in Ihrem Formular verwendeten Werten übereinstimmen.

Wir verwenden den Slug, der der Benutzerrolle zugeordnet ist, um sie im Codeausschnitt zuzuordnen. Zum Beispiel entspricht 'editor' der Rolle Editor in WordPress. Unten habe ich die Standard-WordPress-Benutzerrollen und ihre Slugs hervorgehoben:

  • Administrator – 'administrator'
  • Redakteur – 'editor'
  • Autor – 'author'
  • Mitarbeiter – 'contributor'
  • Abonnent – 'subscriber'

Schritt 4: Testen des Formulars zur bedingten Zuweisung von Benutzerrollen

Der nächste Schritt nach dem Hinzufügen des Codeausschnitts ist das Testen des Formulars, um sicherzustellen, dass es ordnungsgemäß funktioniert, bevor Sie es für Ihre Benutzer freigeben. Dazu empfehle ich, einen Testeintrag zu übermitteln, um zu sehen, ob die Benutzerrolle dynamisch festgelegt wird.

Ich werde eine Testregistrierung in meinem Formular übermitteln und den Kontotyp auf Lehrer setzen.

Wählen Sie den Kontotyp im Frontend aus, um die Benutzerrolle bedingt zuzuweisen

Um nun das Benutzerkonto im WordPress-Adminbereich zu überprüfen, gehen Sie zu Benutzer » Alle Benutzer. Hier sehen Sie alle Benutzerkonten auf Ihrer Website. Da ich bei der Ausfüllung des Registrierungsformulars Lehrer gewählt habe, wird die Rolle des Testbenutzers dynamisch als Redakteur festgelegt.

Wenn Sie Benutzern erlauben, ihre Rolle im Frontend zu wählen, sollten Sie bedenken, dass Sie die von den Benutzern ausgewählten Optionen nicht kontrollieren können. In unserer Implementierung kann ein Student beispielsweise immer noch den Kontotyp Lehrer wählen, und das Formular wird trotzdem übermittelt.

Sie können unser Form Locker Addon verwenden, um den Zugriff auf Ihr Registrierungsformular einzuschränken. Dies stellt sicher, dass nur Benutzer mit einem bestimmten Passwort auf das Formular zugreifen können.

Alternativ können Sie die Benutzeraktivierung für das Registrierungsformular aktivieren, indem Sie im Formular-Builder zu Einstellungen » Benutzerregistrierung navigieren. Schalten Sie dann die Option Benutzeraktivierung aktivieren ein und wählen Sie die Methode Manuelle Genehmigung.

Benutzeraktivierung aktivieren

Auf diese Weise überprüft der Website-Administrator jede Benutzerregistrierung manuell und genehmigt 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 bei Datei-Uploads: Top-Tipps für Online-Formulare

Schritt 5: Veröffentlichen Sie Ihr WordPress-Registrierungsformular

Um die Dinge abzuschließen, fügen wir das Registrierungsformular zu einer Seite hinzu. Bearbeiten Sie dazu das Formular, um auf den Formular-Builder zuzugreifen. Klicken Sie dann auf die Schaltfläche Einbetten in der oberen rechten Ecke der Formular-Builder-Seite.

Formular einbetten Schaltfläche

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

Entscheiden Sie, wie Sie Ihr Formular einbetten möchten

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

Benennen Sie Ihre Seite und fahren Sie fort

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

Veröffentlichen Sie die Seite

Wenn Sie diese Seite im Frontend überprüfen, sehen Sie, 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 – So weisen Sie Benutzerrollen bedingt zu

Dies sind Antworten auf einige der häufigsten Fragen, die wir zur bedingten Zuweisung von Benutzerrollen in WordPress erhalten.

Kann ich mehrere Benutzerrollen bedingt zuweisen?

Nein, der WordPress-Kern unterstützt standardmäßig nur eine Rolle pro Benutzer. Sie können jedoch Plugins wie User Role Editor verwenden, um manuell mehrere Rollen zuzuweisen.

Werden bestehende Benutzer betroffen sein, wenn ich eine bedingte Benutzerrollenzuweisung implementiere?

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 mit einem WordPress-Plugin. Mit dem Members-Plugin können Sie neue Benutzerrollen auf Ihrer Website hinzufügen und die Berechtigungen jeder Rolle anpassen. Die von Ihnen erstellte neue Rolle wird im Dropdown-Menü „Benutzerrollen“ angezeigt, wenn Sie das WPForms User Registration Addon anpassen.

Warum funktioniert der Snippet auf meiner Website nicht?

Dies kann passieren, wenn die Formular-ID oder Feld-ID nicht mit der auf Ihrem Registrierungsformular übereinstimmt. Stellen Sie sicher, dass Sie den Snippet mit Ihren Formular- und Feld-IDs aktualisieren.

Wenn die Optionen im Dropdown-Feld nicht mit den im Snippet angegebenen Rollen übereinstimmen, weist WPForms dem Benutzer außerdem die Standardrolle zu, die bei der Konfiguration des User Registration Addons angegeben wurde.

Passen Sie als Nächstes das Design Ihres Registrierungsformulars an

Jetzt haben Sie ein funktionsfähiges Registrierungsformular, das Benutzerrollen basierend auf Eingaben von Feldern in Ihrem Formular dynamisch zuweist. Ich habe Ihnen gezeigt, wie Sie das Registrierungsformular auf dem Frontend Ihrer Website anzeigen. Aber wussten Sie, dass Sie noch einen Schritt weiter gehen und Ihr Formular verschönern können? WPForms ermöglicht es Ihnen, Ihre WordPress-Formulare zu gestalten, ohne CSS zu schreiben.

Sie können auch eine benutzerdefinierte Anmeldeseite erstellen, die mit dem Logo Ihrer Website gebrandet ist, damit sich Benutzer in ihre Konten einloggen können.

Gestalten Sie jetzt Ihr WordPress-Formular

Bereit, Ihr Formular zu erstellen? Beginnen Sie noch heute mit dem einfachsten WordPress-Formularersteller-Plugin.  WPForms Pro enthält viele kostenlose Vorlagen und bietet eine 14-tägige Geld-zurück-Garantie.

Wenn Ihnen dieser Artikel geholfen hat, folgen Sie uns bitte auf Facebook und Twitter für weitere kostenlose WordPress-Tutorials und Anleitungen.

Offenlegung: Unsere Inhalte werden von unseren Lesern unterstützt. Das bedeutet, dass wir eine Provision verdienen können, wenn Sie auf einige unserer Links klicken. Sehen Sie, wie WPForms finanziert wird, warum das wichtig ist und wie Sie uns unterstützen können.

David Ozokoye

David ist technischer Redakteur bei WPForms. Er testet und dokumentiert neue Funktionen und Updates des WPForms-Plugins. Abseits des Computers spielt er gerne Videospiele und fährt Rollschuh. Mehr erfahren

Das beste WordPress Drag-and-Drop-Formular-Builder-Plugin

Einfach, schnell und sicher. Schließen Sie sich über 6 Millionen Website-Besitzern an, die WPForms vertrauen.

Kommentar hinzufügen

Wir freuen uns, dass Sie einen Kommentar hinterlassen möchten. Bitte beachten Sie, dass alle Kommentare gemäß unserer Datenschutzrichtlinie moderiert werden und alle Links Nofollow sind. Verwenden Sie KEINE Schlüsselwörter im Namensfeld. Führen wir ein persönliches und bedeutungsvolles Gespräch.

Dieses Formular ist durch Cloudflare Turnstile geschützt und die Datenschutzrichtlinie und Nutzungsbedingungen von Cloudflare gelten.