Les rôles et leurs capacités dans WordPress
Il existe plusieurs rôles par défaut dans WordPress qui se partagent une liste prédéfinie de capacités.
Les rôles :
- Super Administrateur – Possède un accès aux paramètres d’administration de multisite et à l’ensemble des fonctionnalités disponibles
- Administrateur – Dispose de toutes les fonctionnalités administratives sur un site individuel
- Éditeur – Autorisé à publier et administrer les articles et les pages, y compris ceux des autres utilisateurs
- Auteur – Capable de publier et de gérer uniquement ses propres articles
- Contributeur – Peut rédiger et gérer ses articles sans avoir la possibilité de les publier
- Abonné – Limité à la gestion de son propre profil
Les capacités sont nombreuses et sont décrites en détail dans le codex WordPress au sujet des rôles et capacités.
Par exemple, edit_posts
permet l’accès au tableau de bord WordPress pour les options suivantes :
- Liste des articles
- Ajout d’article
- Liste des commentaires
- Commentaires en attente d’approbation
Il est possible de modifier les capacités d’un rôle de manière programmatique, et c’est ce que je montre dans cet article.
Modifier les capacités d’un rôle WordPress
La méthode get_role
permet de récupérer un rôle et ses capacités associées.
Par exemple, get_role( 'subscriber' )
donne le résultat suivant :
L’instance retournée est de type WP_Role
.
Cette classe possède 3 méthodes interessante pour gérer les capacités du rôle :
add_cap
: Ajoute une capacité au rôlehas_cap
: Vérifie si le rôle a une capacité donnéeremove_cap
: Supprime une capacité du rôle
Le code intégral
Afin d’illustrer cet article, voici le code pour ajouter la capacité d’édition d’articles au rôle abonné (subscriber
).