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.

maximum minimum
la source
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

mscgl
la source
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);
tjrtmonline
la source
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);
tvorm
la source
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);

Bassscape
la source
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ù.

RRikesh
la source
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

Bryan CS
la source
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.

Torsten Barthel
la source
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);

Kr sachin
la source
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

akTed
la source
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