Si j'ajoute une page personnalisée au menu principal de wordpress via
add_menu_page('My Custom Page', 'My Custom page', 'editor', 'custom_page','add_custom_page','dashicons-admin-comments',8);
seul un utilisateur disposant de privilèges d'édition peut voir la page dans son menu. Comment puis-je rendre cette entrée de menu également disponible pour les utilisateurs dotés de privilèges d'administrateur? Dois-je utiliser add_menu_page () pour chaque rôle d'utilisateur séparément?
Jetons un coup d'oeil à Page Codex pour add_menu_page
...
Le troisième paramètre est:
$ capacité (chaîne)} _ (Obligatoire) La capacité requise pour que ce menu soit affiché à l'utilisateur.
Et plus tard dans la section Notes:
Cette fonction prend une ‘capacité’ (voir Rôles et Capacités) qui sera utilisée pour déterminer si une page est incluse ou non dans le menu. La fonction raccordée pour gérer la sortie de la page doit vérifier que l'utilisateur dispose également de la "capacité" requise.
Comme vous pouvez le constater, vous devez utiliser la capacité (par exemple manage_options
, publish_posts
) et non le rôle utilisateur (editor
, subscriber
) comme paramètre.
Donc, si vous passez publish_pages
en tant que troisième paramètre, seuls l'éditeur, l'administrateur et le super administrateur auront accès à cette page.
Vous trouverez ici la liste des fonctionnalités par défaut pour les rôles d’utilisateur par défaut .