Vous êtes-vous déjà demandé comment attribuer des rôles aux utilisateurs de manière conditionnelle dans WordPress en fonction de certains critères ? Cela peut être incroyablement utile pour les sites qui nécessitent des rôles uniques basés sur les actions de l'utilisateur, le statut de membre, ou d'autres critères.
Bien que WPForms et l'addon User Registration soient des outils puissants pour créer des formulaires d'enregistrement, il est parfois nécessaire d'assigner des rôles aux utilisateurs de manière dynamique en fonction de conditions spécifiques.
Dans ce guide, je vous expliquerai comment attribuer des rôles aux utilisateurs de WordPress en utilisant WPForms.
Comprendre les rôles et les capacités des utilisateurs de WordPress
WordPress dispose de plusieurs rôles intégrés. Ci-dessous, j'ai mis en évidence les rôles d'utilisateur par défaut pris en charge par WordPress :
- Administrateur: Accès complet au backend du site. Ce rôle permet d'effectuer des activités telles que l'ajout de nouveaux utilisateurs, la modification des rôles des utilisateurs, l'installation de plugins et de thèmes, etc.
- Éditeur: Il peut gérer et publier des contenus, même ceux rédigés par d'autres. Son rôle se limite souvent à des activités liées à l'affichage.
- Auteur: Le rôle d'auteur dans WordPress permet aux utilisateurs de publier et de gérer leurs propres articles uniquement.
- Contributeur: Dans WordPress, le rôle de contributeur permet de rédiger et de gérer les articles, mais pas de les publier.
- Abonné: dispose d'un accès limité, généralement pour lire ou commenter.
Chaque rôle a un ensemble de "capacités" qui dictent ce que les utilisateurs peuvent et ne peuvent pas faire. Il est important de se familiariser avec les capacités des rôles d'utilisateur de WordPress afin de savoir quelles autorisations les utilisateurs obtiendront lorsqu'ils s'enregistreront sur votre site. Je vous recommande de consulter le guide de WPBeginner si vous souhaitez en savoir plus sur les rôles et les capacités des utilisateurs dans WordPress.
Comment attribuer des rôles d'utilisateur de manière conditionnelle dans WordPress
Voici un pas-à-pas sur la façon d'assigner des rôles d'utilisateurs de manière conditionnelle dans WordPress.
- Étape 1 : Installer et activer le plugin WPForms
- Étape 2 : Installation et configuration du module complémentaire d'enregistrement des utilisateurs
- Étape 3 : Ajouter un extrait pour attribuer un rôle d'utilisateur de manière conditionnelle
- Étape 4 : Test du formulaire pour l'attribution conditionnelle des rôles d'utilisateur
- Étape 5 : Publier votre formulaire d'inscription WordPress
Étape 1 : Installer et activer le plugin WPForms
WPForms est le meilleur plugin pour créer des formulaires basiques et avancés dans WordPress.
Des simples formulaires de contact aux fonctionnalités plus avancées comme la logique conditionnelle, c'est un outil fiable qui a bien fonctionné pour moi sur plusieurs sites.
La licence Pro de WPForms inclut l'accès à l'addon User Registration, qui vous permet de créer des formulaires d'inscription et de connexion sur votre site WordPress.

Une fois que vous avez acheté la licence Pro, vous devez installer et activer WPForms sur votre site WordPress. Si c'est votre première fois, consultez ce guide pour apprendre à installer WPForms.
Créez votre formulaire d'inscription maintenant
Étape 2 : Installation et configuration du module complémentaire d'enregistrement des utilisateurs
Après avoir installé le plugin WPForms, vous devrez également installer le module complémentaire User Registration.
Pour installer l'addon, allez dans la zone d'administration de WordPress et allez dans WPForms " Addons. Faites défiler vers le bas jusqu'à ce que vous trouviez User Registration Addon, ou utilisez la barre de recherche. Lorsque vous l'avez trouvé, cliquez sur Install Addon.

Une fois que vous avez installé et activé le module complémentaire d'enregistrement des utilisateurs sur votre site, procédez à la création de votre formulaire d'enregistrement.
Création du formulaire
Vous pouvez créer votre formulaire à partir de zéro ou utiliser notre modèle de formulaire d'enregistrement de l'utilisateur pour accélérer le processus de création du formulaire. Pour ce tutoriel, nous allons utiliser le modèle de formulaire d'enregistrement d'utilisateur. Pour accéder à ce modèle, naviguez vers WPForms " Add New. Ensuite, sélectionnez Addon Templates dans le menu latéral.

A partir de là, cliquez sur le bouton Utiliser le modèle ci-dessous pour accéder au modèle de formulaire d'enregistrement de l'utilisateur.

Vous accéderez ainsi au générateur de formulaires, qui vous permettra de personnaliser davantage le modèle.

Dans le générateur de formulaires, ajoutez un champ de choix à votre formulaire. Pour ce tutoriel, j'ajouterai le champ Dropdown avec 2 options : Enseignant et Élève.

Je vais également activer l'option " obligatoire" afin que les utilisateurs soient obligés de sélectionner un type de compte lors de leur inscription.

Notez l'ID du champ Dropdown, car nous en aurons besoin à l'étape suivante.

Après avoir ajouté les champs et personnalisé les options des champs, allez dans Paramètres " Enregistrement de l'utilisateur pour accéder aux paramètres supplémentaires de l'addon.

Si vous avez utilisé le modèle de formulaire d'enregistrement d'utilisateur, toutes les correspondances entre les champs sont déjà faites. Cependant, si vous créez votre formulaire d'enregistrement à partir de zéro, vous devrez faire correspondre les champs de votre formulaire aux métadonnées de l'utilisateur de WordPress.

Par défaut, la section Rôles de l'utilisateur est réglée sur Abonné. Il n'est pas nécessaire de s'inquiéter de l'attribution des rôles pour l'instant, car elle sera gérée à l'aide de la logique conditionnelle. Cependant, notez que ce sera le rôle attribué par défaut aux utilisateurs si l'extrait ne fonctionne pas correctement sur votre site.

Une fois que vous avez fini de personnaliser votre formulaire, n'oubliez pas de cliquer sur le bouton Enregistrer pour sauvegarder vos modifications.

Étape 3 : Ajouter un extrait pour attribuer un rôle d'utilisateur de manière conditionnelle
WPForms ne supporte pas actuellement l'attribution de rôles d'utilisateurs basés sur des entrées provenant d'autres champs par défaut. Cependant, avec un snippet PHP personnalisé, vous pouvez personnaliser votre formulaire d'enregistrement pour assigner des rôles d'utilisateur conditionnellement en fonction des entrées du formulaire.
Dans notre exemple, nous le configurerons pour qu'il vérifie le champ déroulant que nous avons ajouté au formulaire d'inscription. Si l'utilisateur sélectionne Enseignant comme type de compte, nous lui attribuerons un rôle d'Éditeur. S'il sélectionne Étudiant, le snippet lui attribuera un rôle d'Auteur.
Pour ce faire, copiez et collez l'extrait ci-dessous sur votre site. Je recommande d'utiliser l'élément WPCode pour ajouter l'extrait de code à votre site. Ce plugin permet d'ajouter facilement des extraits de code personnalisés aux sites WordPress sans avoir à se soucier de l'interface utilisateur. functions.php
ou de s'inquiéter de la rupture du site.
Pour plus de détails sur l'utilisation du plugin WPCode, veuillez consulter notre tutoriel sur l'ajout de snippets personnalisés dans WordPress.
Explication du code
L'extrait ci-dessus utilise l'option wpforms_user_registration_process_registration_get_data
pour capturer les données de l'utilisateur après qu'il ait soumis votre formulaire d'inscription. Nous vérifions le champ Dropdown du formulaire et attribuons à l'utilisateur un rôle en fonction de ses données.
Nous avons configuré le snippet pour qu'il ne fonctionne que sur le formulaire dont l'ID est 13. Cela correspond à l'ID de mon formulaire d'inscription. Vous devrez mettre à jour cet identifiant pour qu'il corresponde à celui de votre formulaire. Pour obtenir l'ID de votre formulaire, allez dans WPForms " All Forms et regardez sous la colonne Shortcode. Le nombre dans le shortcode est l'ID du formulaire.

En outre, le $role_field_id
qui est l'identifiant du champ Dropdown, est fixée à 6 dans le code ci-dessus. Vous devrez également la remplacer pour qu'elle corresponde à celle de votre champ Dropdown. Rappelez-vous que je vous ai demandé de noter la valeur ID du champ de la liste déroulante. C'est ici que nous utiliserons la valeur.
Le $role_mapping
est l'endroit où nous définissons la correspondance des valeurs des champs de la liste déroulante. L'option Enseignant correspond au rôle d'éditeur dans WordPress, tandis que l'option Étudiant correspond au rôle d'auteur. Vous pouvez ajouter d'autres paires clé-valeur en fonction du nombre d'options de votre formulaire d'inscription.
Conseil de pro
Le mappage des champs Étudiant et Enseignant dans l'extrait ci-dessus correspond aux options que j'ai spécifiées dans le champ déroulant lors de la personnalisation du formulaire d'inscription. Si les options de votre champ Dropdown sont différentes des miennes, veillez à mettre à jour les paires de clés dans le tableau $role_mapping afin qu'elles correspondent aux valeurs que vous avez utilisées dans votre formulaire.
Nous utilisons la balise associée au rôle de l'utilisateur pour le mapper dans le snippet. Par exemple, "editor" correspond au rôle d'éditeur dans WordPress. Ci-dessous, j'ai mis en évidence les rôles d'utilisateur par défaut de WordPress et leurs attributs :
- Administrateur - "administrator" (administrateur)
- Éditeur - "editor
- Auteur - "auteur
- Contributeur - "contributor" (contributeur)
- Abonné - "subscriber" (abonné)
Étape 4 : Test du formulaire pour l'attribution conditionnelle des rôles d'utilisateur
L'étape suivante après l'ajout du snippet est de tester le formulaire pour s'assurer qu'il fonctionne correctement avant de le déployer auprès de vos utilisateurs. Pour cela, je recommande de soumettre une entrée de test pour voir si le rôle de l'utilisateur est défini dynamiquement.
Je vais soumettre un enregistrement test sur mon formulaire et définir le champ Type de compte sur Enseignant.

Maintenant, pour vérifier le compte d'utilisateur dans la zone d'administration de WordPress, allez dans Utilisateurs " Tous les utilisateurs. Vous y verrez tous les comptes d'utilisateurs de votre site. Comme j'ai choisi Enseignant lorsque j'ai rempli le formulaire d'inscription, le rôle de l'utilisateur test est dynamiquement défini comme Éditeur.

Lorsqu'on permet aux utilisateurs de choisir leur rôle sur le frontend, il faut garder à l'esprit que l'on ne peut pas contrôler les options sélectionnées par les utilisateurs. Dans notre implémentation, par exemple, un étudiant peut toujours choisir le type de compte Enseignant, et le formulaire sera toujours soumis.
Vous pouvez utiliser notre addon Form Locker pour restreindre l'accès à votre formulaire d'inscription. Ainsi, seuls les utilisateurs disposant d'un mot de passe spécifique pourront accéder au formulaire.
Vous pouvez également activer l'activation de l'utilisateur pour le formulaire d'enregistrement en naviguant vers Paramètres " Enregistrement de l'utilisateur dans le générateur de formulaires. Activez ensuite l'option Activer l'activation de l'utilisateur et sélectionnez la méthode d'approbation manuelle.

De cette façon, l'administrateur du site examinera manuellement chaque enregistrement d'utilisateur et approuvera les comptes d'utilisateur s'ils répondent à vos exigences. Vous pouvez confirmer que l'utilisateur a choisi le bon type de compte avant d'approuver son compte.
Lire aussi: Sécurité du téléchargement de fichiers : Conseils pour les formulaires en ligne
Étape 5 : Publier votre formulaire d'inscription WordPress
Pour conclure, ajoutons le formulaire d'inscription à une page. Pour ce faire, modifiez le formulaire pour accéder au générateur de formulaires. Cliquez ensuite sur le bouton Embed (Intégrer) dans le coin supérieur droit de la page du générateur de formulaires.

Vous avez la possibilité de publier votre formulaire sur une nouvelle page ou sur une page existante. Pour ce guide, je choisirai l'option Créer une nouvelle page.

Donnez un nom à votre nouvelle page et cliquez sur Let's Go.

Vous serez dirigé vers l'éditeur de pages WordPress avec votre formulaire intégré à la page. Cliquez sur le bouton Publier pour publier votre page.

Lorsque vous consultez cette page sur le frontend, vous constatez que vous disposez d'un formulaire d'enregistrement d'utilisateur entièrement fonctionnel. Notez qu'il est également possible d'intégrer vos formulaires à l'aide d'un shortcode ou d'un widget.
FAQ - Comment attribuer des rôles d'utilisateur de manière conditionnelle ?
Voici les réponses à quelques-unes des questions les plus fréquemment posées sur l'attribution conditionnelle de rôles aux utilisateurs dans WordPress.
Puis-je attribuer plusieurs rôles d'utilisateur de manière conditionnelle ?
Non, le noyau de WordPress ne prend en charge qu'un seul rôle par utilisateur par défaut. Cependant, vous pouvez utiliser des plugins comme User Role Editor pour attribuer manuellement plusieurs rôles.
Les utilisateurs existants seront-ils affectés lorsque je mettrai en œuvre l'attribution conditionnelle de rôles aux utilisateurs ?
Non, cela n'affecte que les nouveaux enregistrements d'utilisateurs via WPForms. Les rôles des utilisateurs existants restent inchangés.
Comment créer un rôle d'utilisateur personnalisé dans WordPress ?
Le moyen le plus simple d'y parvenir est d'utiliser un plugin WordPress. Avec le plugin Members, vous pouvez ajouter de nouveaux rôles d'utilisateur sur votre site et personnaliser les capacités de chaque rôle. Le nouveau rôle que vous créez apparaîtra dans la liste déroulante des rôles d'utilisateur lorsque vous personnaliserez le module complémentaire d'enregistrement des utilisateurs de WPForms.
Pourquoi l'extrait ne fonctionne-t-il pas sur mon site ?
Cela peut se produire si l'identifiant du formulaire ou du champ ne correspond pas à celui de votre formulaire d'inscription. Veillez à mettre à jour le snippet avec les identifiants de votre formulaire et de vos champs.
De plus, si les options du champ Dropdown ne correspondent pas aux rôles spécifiés dans le snippet, WPForms assignera à l'utilisateur le rôle par défaut spécifié lors de la configuration de l'addon User Registration.
Ensuite, personnalisez le style de votre formulaire d'inscription
Vous disposez maintenant d'un formulaire d'inscription fonctionnel qui attribue dynamiquement des rôles aux utilisateurs en fonction des données saisies dans les champs du formulaire. Je vous ai montré comment afficher le formulaire d'inscription sur le frontend de votre site. Mais saviez-vous que vous pouviez aller plus loin et embellir votre formulaire ? WPForms vous permet de styliser vos formulaires WordPress sans écrire de CSS.
Vous pouvez également créer une page de connexion personnalisée avec le logo de votre site pour permettre aux utilisateurs de se connecter à leur compte.
Stylez votre formulaire WordPress maintenant
Prêt à créer votre formulaire ? Commencez dès aujourd'hui avec le plugin de construction de formulaire WordPress le plus facile à utiliser. WPForms Pro inclut de nombreux modèles gratuits et offre une garantie de remboursement de 14 jours.
Si cet article vous a aidé, n'hésitez pas à nous suivre sur Facebook et Twitter pour d'autres tutoriels et guides gratuits sur WordPress.