J'ai un problème avec la permission. Existe-t-il une autorisation spécifique permettant à un utilisateur ayant un rôle d'éditeur de gérer le menu personnalisé d'un thème et uniquement avec ces options?
L'élément qui est sous Apparence -> Menu, pour être clair.
J'utilise le plugin de capacité. Dois-je écrire un hook personnalisé pour activer uniquement l'utilisation de l'éditeur de menu personnalisé?
TIA
Edit: J'ai codé une solution simple. Voir ci-dessous ma réponse!
Vous devez donner au rôle d’éditeur l’autorisation "edit_theme_options", mais cela débloquera également d’autres options de thème, telles que les widgets, pour ces utilisateurs.
Ok, j'ai trouvé un moyen d'utiliser l'action admin_menu. Je poste ici, au cas où quelqu'un en aurait besoin.
Ce code supprime pour un utilisateur spécifique tous les éléments de sous-menus, à l'exception de celui des menus personnalisés du menu Appereance .
add_action('admin_menu', 'enable_only_custom_menu');
function enable_only_custom_menu() {
global $menu,$submenu;
global $current_user;
get_currentuserinfo();
if ($current_user->user_login == 'username') {
foreach($submenu['themes.php'] as $key=>$smenu) {
if ($smenu[2] != 'nav-menus.php') {
unset($submenu['themes.php'][$key]);
}
}
}
}
Vous devez itérer le sous-menu pour la clé 'themes.php' et supprimer tous les éléments qui ne vous intéressent pas.