Un de mes clients utilise un site wordpress avec Woocommerce. On m'a récemment demandé de me connecter en tant qu'un de leurs utilisateurs, afin de reproduire un problème. Ce que j'ai trouvé, c'est que je peux taper/wp-admin et cela me prend juste pour le panneau d'administration complet et j'ai tous les mêmes éléments de menu en tant qu'administrateur. Ceci est évidemment très sérieux car si l'un des utilisateurs s'en aperçoit, il pourrait faire baisser le site s'il le voulait.Wordpress: Pourquoi les abonnés peuvent-ils voir le panneau d'administration?
Pour tenter de les bloquer, j'ai placé le script suivant dans le fichier functions.php:
// Redirect non-admins away from wp-admin
add_action('init', 'blockusers_init');
function blockusers_init() {
$current_user = wp_get_current_user();
if (is_admin() && ! current_user_can('administrator') && ! (defined('DOING_AJAX') && DOING_AJAX)) {
wp_redirect(home_url());
exit;
}
}
Une fois connecté en tant qu'utilisateur qui a un rôle de « abonné », current_user_can (« administrateur » renvoie false si je suis sur le front-end du site, et il renvoie vrai si je vais dans/wp-admin.
Étant donné que l'utilisateur actuel n'est qu'un abonné, j'imagine qu'il doit retourner false partout. Je suis un peu coincé avec ça ... et je ne sais pas ce que je devrais regarder après. (J'ai essayé les trucs habituels comme désactiver tous les plugins, mais le problème est toujours là). Est-ce que vous avez une idée de ce que je devrais essayer?
avez-vous cliqué sur le panneau d'administration et vérifié qu'il s'agit bien du panneau d'administration et non du panneau d'administration des paramètres personnels? –
Avez-vous vérifié l'option "Nouvel utilisateur par défaut" dans les paramètres généraux? – JazZ