J'ai une situation où j'ai besoin que les utilisateurs soient marqués comme "Instructeurs" sur un site. Ce rôle doit en principe correspondre au rôle actuel de l'utilisateur avec la possibilité supplémentaire d'afficher les commentaires des étudiants sur un type de publication personnalisé appelé "Questions".
J'ai du mal à mettre en œuvre ce concept. Devrais-je simplement ajouter une nouvelle capacité et la faire attribuer par elle-même, ou devrais-je l'ajouter et l'attribuer également à un nouveau rôle?
[edit] D'après les ressources de kaiser, il me semble que je devrais simplement ajouter la fonctionnalité personnalisée et l'attribuer aux utilisateurs individuellement, peut-être à partir de la page d'administration des options/paramètres de mon propre plugin, au lieu de créer un rôle spécifique [/ edit]
Que se passe-t-il si je change le rôle de l'utilisateur en un autre (par exemple, d'administrateur à éditeur) tout en voulant qu'il ait cette capacité? Est-ce une chose assez facile à programmer dans un plugin personnalisé (d'où je fais tout ça depuis), ou est-ce que ce sera une entreprise monumentale?
Voici mes principales questions.
Quelle est la logique sous-jacente lors du changement de rôle d'utilisateur?
Les fonctionnalités personnalisées attribuées sont-elles reportées lors du changement de rôle d'utilisateur ou la nouvelle attribution de rôle remplace-t-elle autre chose?
Le système de capacité WordPress fonctionne comme suit:
N'oubliez pas que les noms de rôle sont également des fonctionnalités , mais vous ne devez pas les vérifier. Il en va de même pour le level-0
obsolète jusqu'à ce que level-9
soit limité.
En théorie, WordPress prend en charge plusieurs rôles par utilisateur - ce qui est extrêmement très pratique car vous pouvez ajouter et supprimer des packages de fonctionnalités résumés sous les noms de rôles. Il n'a tout simplement pas d'interface utilisateur et n'est pas intégré. Oh, et il n'y a (apparemment) aucun plugin qui offre cela.
Donc: oui attribuer des capacités aux utilisateurs est OK. Mais gardez à l'esprit que cela peut rapidement entraîner un cauchemar d'entretien. Dans la plupart des cas, il est préférable (pas parfait) de simplement saisir un rôle, de copier ses fonctionnalités dans votre nouveau rôle et d'ajouter le nouveau rôle à un utilisateur. Lorsque vous souhaitez ensuite modifier quelque chose, il vous suffit de changer de rôle pour tous les utilisateurs nécessitant un nouvel ensemble de limites.
Note: Ceci est mon opinion. D'autres pourraient en avoir un différent en ce qui concerne ce qui est un cauchemar et ce qui ne l'est pas :)