L'utilisateur administrateur ne peut pas mettre à jour WP


11

J'ai un site exécutant WP 3.3.2. Le backend affiche une barre indiquant "WordPress 3.5 est disponible! Veuillez en informer l'administrateur du site."

Le plus drôle, c'est que je suis connecté avec un utilisateur administrateur, j'ai vérifié une deuxième fois. Lorsque j'essaie d'accéder à la page de mise à jour (à wp-admin / update-core.php) j'obtiens cette erreur:

"Vous ne disposez pas des autorisations suffisantes pour accéder à cette page."

Des indices sur ce qui pourrait se passer ici? Merci.


Nouvelle installation? Aviez-vous un plugin qui aurait pu modifier les capacités de votre administrateur?
RRikesh

J'ai désactivé tous les plugins, mais cela n'a pas aidé. Je n'ai pas encore effectué une nouvelle installation car j'ai beaucoup de contenu, je devrais passer à la nouvelle installation. J'essaierai cela s'il n'y a pas d'autre solution.
Max Min

Réponses:


1

Essayez de créer un nouvel utilisateur administrateur dans la base de données.

Suivez ces étapes, vous devriez être en mesure de créer un nouvel utilisateur administrateur, puis de mettre à jour et de redonner à votre ancien utilisateur les droits d'administrateur. Ou utilisez le nouvel utilisateur.

Votre ancien utilisateur peut avoir un mauvais réglage dans la base de données

http://www.dnawebagency.com/how-to-add-an-admin-user-to-the-wordpress-database


Merci, j'ai essayé et je peux ajouter un nouvel utilisateur. Malheureusement, le nouvel utilisateur ne dispose pas non plus d'autorisations de mise à jour. Très étrange.
Max Min

Salut, c'est étrange. Avez-vous essayé de télécharger WP 3.3.2 manuellement puis d'écraser tous les fichiers (via ftp) (pas le fichier wp-config). puis essayez de mettre à jour vers 3.5
mscgl

Excellent conseil, cela a fonctionné - merci! J'ai écrasé manuellement mes fichiers de base WP, puis j'ai pu passer à la version 3.5.
Max Min

C'était une bonne nouvelle :)
mscgl

28

J'ai eu ce problème une fois.

Vous devriez vérifier votre wp-config.phpfichier et si vous trouvez cette ligne

define('DISALLOW_FILE_MODS',true);

changez sa valeur en false:

define('DISALLOW_FILE_MODS',false);

Parfait - un collègue l'a défini sur un site que nous gérons en le confondant avec DISABLE_FILE_EDIT. Commandes similaires donc je suppose que c'est une erreur facile à faire.
John Reid du

Cela fonctionne très bien pour moi merci pour votre aide
Amit Verma

6

Pour toute autre personne ayant ce problème, il existe une autre ligne que vous devrez peut-être trouver dans votre fichier wp-config ou de fonctions et la remplacer par false:

define('DISALLOW_FILE_EDIT', true);

Ce paramètre peut apparaître dans wp-settings.php
Kristjan Adojaan

3

WordPress me disait que je n'avais pas «d'autorisations suffisantes» pour mettre à jour ma propre installation même lorsque je me connectais en tant qu'administrateur.
J'avais la ligne suivante dans mon fichier wp-config.php:
define('DISALLOW_FILE_MODS',true);
j'ai pu appliquer à nouveau les mises à jour après avoir changé cette ligne en:
define('DISALLOW_FILE_MODS',false);


Ce paramètre peut apparaître dans wp-settings.php
Kristjan Adojaan

1

Ajoutez le code suivant à un fichier dans votre racine wordpress et accédez à cette page.

<?php
define('WP_USE_THEMES', false);
require('wp-blog-header.php');

$role = get_role('administrator');

echo '<pre>';
print_r($role);
echo '</pre>';

Maintenant, recherchez [update_core]dans le texte affiché. Sa valeur devrait être 1.

Sinon, ajoutez la ligne suivante après la $role = get_role('administrator')ligne pour ajouter la update_core capacité à l'administrateur.

$role->add_cap( 'update_core' ); 

Rechargez la page pour voir si la valeur de [update_core]est 1. Si c'est le cas 1, vous pouvez essayer de faire la mise à jour. N'oubliez pas de supprimer le fichier que vous avez ajouté par la suite.

Méthode 2:

Montez sur PHPMyadmin et allez à la wp_userstable. Recherchez votre ID utilisateur. Accédez maintenant à wp_usermetaet modifiez le wp_capabilitiesde votre ID utilisateur en a:1:{s:13:"administrator";b:1;}. Faites une sauvegarde avant de toucher la base de données, au cas où.


Merci, j'ai essayé et j'ai obtenu la valeur "1" pour [update_core]. Mais encore, je ne peux rien mettre à jour.
Max Min

Ajout d'une autre suggestion.
RRikesh

0

J'ai rencontré ce problème une fois lors de la mise à jour d'une installation 3.9.19.

J'ai suivi la réponse @RRikesh et tout semblait normal mais je ne peux toujours pas exécuter la mise à jour.

Il s'avère qu'un a define('DISALLOW_FILE_MODS',true);été configuré dans functions.php.

Alors oui, recherchez cette ligne dans votre wp-config.phpaussi functions.php.

Je ne sais pas si l'ajout de cette ligne functions.phpest une pratique courante, car la plupart des réponses suggèrent uniquement de regarderwp-config.php


0

Souvent, vous devez vous assurer que votre installation wordpress dispose des autorisations de fichier et de répertoire appropriées. Si vous pouvez vous connecter à votre serveur via SSH, cela ne pose aucun problème.

  1. Réinitialiser l'autorisation de tous les fichiers sur 664:

trouver / var / www / html / -type f -exec chmod 664 {} \;

  1. Réinitialisez l'autorisation des répertoires sur 775:

trouver / var / www / html / -type d -exec chmod 775 {} \;

  1. Obtenir l'utilisateur qui exécute Apache (l'utilisateur doit être la première ligne / colonne):

ps aux | grep apache

  1. Récupérez les groupes auxquels l'utilisateur appartient:

groupes [nom d'utilisateur]

  1. Réinitialisez le groupe sur le groupe exécutant Apache:

chgrp -R [groupe] / var / www / html /

Vous devriez maintenant pouvoir mettre à jour Wordpress automatiquement depuis votre backend.


0

J'ai corrigé cela en changeant une valeur à l'intérieur du wp-config.php.

define('DISALLOW_FILE_MODS',true);

changez la valeur en false:

define('DISALLOW_FILE_MODS',false);


1
Quelle est votre réponse différente de celles déjà données? Par exemple, ceci ou celui- ci.
nmr

-1

C'est un coup dans le noir, mais avez-vous par hasard des plugins mu qui pourraient être à l'origine de cela? wp-content/mu-plugins


Merci pour votre réponse, mais non, je n'ai aucun mu-plugin installé.
Max Min

1
Normalement, les plugins traitant des rôles et capacités ne doivent pas être placés dans le dossier mu-plugins. Les rôles et les limites sont définis lors de l'activation du plugin ou de l'activation du thème car ils sont stockés dans la base de données.
RRikesh

De plus, essayer d'accéder aux objets de rôle avant le chargement des plugins générera une erreur fatale
shea
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.