Je cherchais dans les forums, mais je ne trouve que des problèmes légèrement liés.
C'est mon problème:
J'aimerais attribuer à certains éditeurs la possibilité d'ajouter uniquement des publications dans un terme prédéfini d'une taxonomie personnalisée.
J'ai créé une taxonomie appelée événements, qui contient une liste des événements ajoutés par un administrateur. Certains utilisateurs ne sont autorisés à ajouter des publications à l'aide d'un seul événement, par exemple. "Japon" ou "Haïti".
Quelqu'un sait-il comment s'y prendre? Existe-t-il des plugins de gestion des utilisateurs dotés de ce type de fonctionnalités?
Cordialement, Joost.
Commencez par accrocher l'action save_post: http://codex.wordpress.org/Plugin_API/Action_Reference/save_post
Puis vérifiez les capacités: vous avez des documents sur ce droit?
Ensuite, obtenez get_the_terms pour le $ post_id fourni par save_post et la taxonomie que vous souhaitez vérifier. http://codex.wordpress.org/Function_Reference/get_the_terms
Ensuite, s’ils utilisent un terme (voir la remarque ci-dessous), ils ne sont pas autorisés à arrêter/supprimer le message, à définir un avertissement ou à supprimer le terme.
Remarque: une taxonomie est une liste de termes pouvant être appliqués à un article. Exemple: la taxonomie "Nation" contiendrait des termes tels que "Mexique", "France" et "Inde"
Partout où vous affichez les taxonomies que l'utilisateur peut sélectionner lorsqu'il est connecté (vous attribuez des majuscules, je suppose donc que l'utilisateur doit se connecter), il suffit de faire une vérification comme celle-ci ...
if(current_user_can('your_custom_capability'))
{
//display only those taxonomies that he should be allowed to post into
}
Si vous affichez la liste des catégories/taxonomies par défaut dans le tableau de bord, vous devez rechercher un filtre appliqué pendant que les catégories/taxonomies sont répertoriées. Je vérifierai ce filtre et verrai si je peux en trouver un.
Excellent article ici sur user roles et la gestion des rôles utilisateur, pour votre cas, cherchez peut-être à ajouter un rôle personnalisé à chaque utilisateur à l'aide de WP_User_class ou peut-être même un nouveau rôle avec les mêmes fonctionnalités que l'éditeur mais + 1 d'event_poster ou quelque chose de similaire, l'article est plein de bonnes choses que vous pouvez référencer.