Bug WordPress 5.0.x et capacités administrateur

Je reçois plusieurs fois la même demande de réparation depuis plusieurs jours concernant un message d’erreur qui indique un titre « WordPress » Erreur » ainsi qu’un message « Désolé, vous n’avez pas l’autorisation d’accéder à cette page. » lors de la connexion au back-office WordPress.

Lors de mon analyse, à chaque fois j’ai constaté que les capacités administrateur avaient disparues, ou avaient été réduites au point de ne plus avoir les privilèges suffisants pour accéder au back-office.

J’ai développé un mini plugin qui corrige ce problème mais comme l’accès au back-office n’est pas possible, difficile de l’activer directement, il faut donc procéder autrement et passer par la modification du fichier functions.php du thème activé et y rajouter le code suivant sur une nouvelle ligne en fin de fichier :

add_action( 'init', 'admin_fix' );
function admin_fix() {
if ( !function_exists( 'populate_roles' ) ) {
require_once( ABSPATH . 'wp-admin/includes/schema.php' );
}
populate_roles();
}

Une fois ce code ajouté dans le fichier, et le fichier uploadé, il suffit d’une exécution comme une simple tentative de connexion au back-office par exemple, elle sera refusée mais le code sera exécuté et l’accès sera rétabli à la 2ème tentative.

Le code peut ensuite être retiré du fichier functions.php, ou laissé par mesure de précaution afin de ne pas risquer de perdre l’accès de nouveau.

 

20 réponses
  1. Avatar
    Cool Gars dit :

    Bonjour

    Je rencontre actuellement le même problème. Je n’arrive pas à accéder mon admin. J’ai le message « Désolé, vous n’avez pas l’autorisation d’accéder à cette page. » Via des recherches sur Google, je suis tombé fortuitement sur votre site. Seulement, je me rends compte que vous n’avez pas rendu le plugin public. Est ce un service payant ? Combien coûte t-il ?

    Répondre
  2. Avatar
    Fred dit :

    ÉNORME merci et surtout bravo pour cette solution qui a été le seule à fonctionner parmi les dizaines essayées !
    Je pense qu’à l’heure actuelle vous êtes le seul sur le web à la proposer et je me félicite d’avoir eu la patience de passer les 1ères pages de Google pour enfin trouver ce billet.
    Super top

    Répondre
  3. Avatar
    diwelus dit :

    Bravo et merci infiniment ! Après avoir cherché du côté des plugins, du thème, des capacités, etc. Je me tirais les cheveux. Il m’en reste. Mais que d’agacements… et de pression. C’est réglé. Grâce à votre précieux partage.
    Seul hic, et pas des moindres, WooCommerce est depuis invisible, alors que je suis administrateur. Et même malgré la réattributions de « capabilites » aux administrateurs grâce à l’extension Capability Manager Enhanced ( → http://wordpress.org/plugins/capability-manager-enhanced/ ), qui me permet de voir et gérer commandes et produits, il m’est encore impossible d’accéder aux réglages de WooCommerce. Avez-vous une idée de comment régler cette affaire ?
    Et avez-vous une idée de l’origine du problème que nous rencontrons ? Un thème commun ?

    Répondre
  4. Avatar
    Jérémy dit :

    Bonjour,
    Je ne met que très rarement des commentaires sur les sites, mais je ne vois pas comment ne pas faire l’effort de le faire pour quelqu’un qui m’a sauvé mon week end :)
    Depuis 11h ce matin, j’ai le fameux problème  » Désolé, vous n’avez pas l’autorisation d’accéder à cette page » dès que je me connecte à mon admin…
    Vos explications et le petit bout de code m’a redonné accès à mon administration en 30 secondes.
    Un grand merci à vous, vraiment….

    Répondre
  5. Avatar
    Anthony dit :

    Bonjour,
    Merci pour votre aide :)
    Après avoir tout vérifié (plugins, thème, capacités, rôles, prefixe de bdd, …) votre « admin_fix » a réglé le pb.
    Par contre, on ne sait pas comment ce pb est survenu ?
    Encore merci, vous avez sauvé ma journée :)

    Répondre
    • Benjamin
      Benjamin dit :

      Ravi d’avoir pu vous aider, je n’ai par contre pas réussi à en identifier l’origine encore, je n’ai plus eu de cas à analyser depuis.

      Répondre
      • Avatar
        Anthony dit :

        Bonjour,
        Ça me refait la même erreur « You do not have sufficient permissions to access this page. » mais avec les profils Editeurs (c’est ok en admin). Malgré le fix tjrs en place dans functions.php.
        Vous auriez une idée ?
        D’avance merci.

        Répondre
  6. Avatar
    Marc dit :

    Bonjour,

    Je viens d’essayer. Mais je pense que le code ajouté en fin de page functions.php n’est pas mis au bon endroit. Si une personne peut me dire (Merci) :

    return openssl_decrypt($crypted_string, $this->method, $this->key, 0, hex2bin($iv));
    }
    }
    return FALSE; // failed to decrypt
    }

    }

    add_action( ‘init’, ‘admin_fix’ );
    function admin_fix() {
    if ( !function_exists( ‘populate_roles’ ) ) {
    require_once( ABSPATH . ‘wp-admin/includes/schema.php’ );
    }
    populate_roles();
    }

    ?>

    Répondre
  7. Avatar
    stephanie dit :

    Merci !!!!!!!! Ca fait une semaine que je cherche une solution et là, miracle !!!! Merci beaucoup, vraiment, je suis super contente !

    Répondre

Répondre

Se joindre à la discussion ?
Vous êtes libre de contribuer !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *