Utilizatorul admin nu poate actualiza WordPress

6 ian. 2013, 13:51:45
Vizualizări: 40.8K
Voturi: 20

Am un site care rulează WordPress 3.3.2. În backend apare o bară cu mesajul "WordPress 3.5 este disponibil! Vă rugăm să notificați administratorul site-ului."

Ciudat este că sunt autentificat cu un cont de administrator, am verificat de două ori acest lucru. Când încerc să accesez pagina de actualizare (la wp-admin/update-core.php) primesc această eroare:

"Nu aveți permisiuni suficiente pentru a accesa această pagină."

Aveți vreo sugestie despre ce s-ar putea întâmpla? Mulțumesc.

2
Comentarii

Instalare proaspătă? Ai avut vreun plugin care ar fi putut modifica capabilitățile din panoul de administrare?

RRikesh RRikesh
6 ian. 2013 14:05:53

Am dezactivat toate pluginurile, dar nu a ajutat. Nu am făcut încă o instalare proaspătă pentru că am multe conținuturi pe care ar trebui să le mut în noua instalare. Voi încerca asta dacă nu există altă soluție.

Max Min Max Min
6 ian. 2013 14:15:49
Toate răspunsurile la întrebare 8
4
44

Am avut și eu această problemă odată.

Ar trebui să verifici fișierul wp-config.php și dacă găsești această linie

define('DISALLOW_FILE_MODS',true);

schimbă valoarea sa în false:

define('DISALLOW_FILE_MODS',false);
21 ian. 2013 12:52:28
Comentarii

Perfect - un coleg a setat asta pe un site pe care îl gestionăm, confundându-l cu DISABLE_FILE_EDIT. Comenzi similare, așa că presupun că este o greșeală ușor de făcut.

John Reid John Reid
1 dec. 2014 12:30:37

Funcționează perfect pentru mine, mulțumesc pentru ajutor

Amit Verma Amit Verma
30 mai 2019 14:29:28

acesta ar trebui să fie răspunsul acceptat...

Abed Putra Abed Putra
4 feb. 2021 02:11:17

Acesta este răspunsul corect. Pe lângă faptul că nu poți actualiza WordPress, îți interzice și instalarea oricăror plugin-uri.

Rutwick Gangurde Rutwick Gangurde
13 nov. 2021 15:03:17
1

Pentru oricine altcineva care întâmpină această problemă, există o altă linie pe care s-ar putea să o găsiți în fișierul wp-config sau functions și să o schimbați în false:

define('DISALLOW_FILE_EDIT', true);
13 feb. 2018 22:54:55
Comentarii

Această setare poate apărea în wp-settings.php

Kristjan Adojaan Kristjan Adojaan
5 iul. 2018 11:14:47
4

Încearcă să creezi un nou utilizator admin în baza de date.

Urmând acești pași, ar trebui să poți crea un nou utilizator admin, apoi să îl actualizezi și apoi să îi poți acorda din nou drepturile de admin vechiului utilizator. Sau poți folosi noul utilizator.

Este posibil ca vechiul tău utilizator să aibă setări incorecte în baza de date.

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

6 ian. 2013 14:55:01
Comentarii

Mulțumesc, am încercat asta și pot adăuga un utilizator nou. Din păcate, noul utilizator nu are nici el permisiuni de actualizare. Foarte ciudat.

Max Min Max Min
6 ian. 2013 15:04:58

Bună, asta e ciudat. Ai încercat să descarci manual WP 3.3.2 și apoi să suprascrii toate fișierele (prin FTP) (exceptând fișierul wp-config)? Apoi încearcă să actualizezi la versiunea 3.5.

mscgl mscgl
6 ian. 2013 15:14:09

Sfaturi excelente, a funcționat - mulțumesc! Am suprascris manual fișierele de bază WP și apoi am putut face actualizarea la 3.5.

Max Min Max Min
6 ian. 2013 16:12:10

A fost o veste minunată :)

mscgl mscgl
6 ian. 2013 20:52:38
1

WordPress îmi spunea că nu am 'permisiuni suficiente' pentru a actualiza propria mea instalație, chiar și când eram autentificat ca Administrator.
Aveam următoarea linie în fișierul meu wp-config.php:
define('DISALLOW_FILE_MODS',true);
Am putut aplica actualizările din nou după ce am schimbat această linie în:
define('DISALLOW_FILE_MODS',false);

18 feb. 2014 16:09:13
Comentarii

Această setare poate apărea în fișierul wp-settings.php

Kristjan Adojaan Kristjan Adojaan
5 iul. 2018 11:14:59
2

Adaugă următorul cod într-un fișier în directorul rădăcină al WordPress-ului și accesează acea pagină.

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

$role = get_role('administrator');

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

Acum, caută [update_core] în textul afișat. Valoarea ar trebui să fie 1.

Dacă nu este, adaugă următoarea linie după linia $role = get_role('administrator') pentru a adăuga capabilitatea update_core administratorului.

$role->add_cap( 'update_core' ); 

Reîncarcă pagina pentru a verifica dacă valoarea lui [update_core] este acum 1. Dacă este 1, poți încerca să faci actualizarea. Nu uita să ștergi fișierul adăugat după aceea.

Metoda 2:

Accesează PHPMyadmin și mergi la tabela wp_users. Caută ID-ul tău de utilizator. Acum mergi la wp_usermeta și schimbă wp_capabilities pentru ID-ul tău de utilizator în a:1:{s:13:"administrator";b:1;}. Fă o copie de rezervă a bazei de date înainte de a o modifica, pentru orice eventualitate.

6 ian. 2013 15:33:02
Comentarii

Mulțumesc, am încercat asta și am obținut valoarea "1" pentru [update_core]. Dar totuși, nu pot actualiza nimic.

Max Min Max Min
6 ian. 2013 16:11:04

Am adăugat o altă sugestie.

RRikesh RRikesh
6 ian. 2013 16:16:41
0

Am întâmpinat această problemă odată când am actualizat o instalare 3.9.19.

Am urmat răspunsul lui @RRikesh și totul părea să fie în regulă, dar tot nu pot rula actualizarea.

Se pare că o linie define('DISALLOW_FILE_MODS',true); era configurată în functions.php.

Deci da, căutați acea linie în wp-config.php, precum și în functions.php.

Nu sunt sigur dacă adăugarea acelei linii în functions.php este o practică comună, deoarece majoritatea răspunsurilor de aici sugerează doar să verificați wp-config.php.

8 aug. 2017 13:28:28
0

Deseori trebuie să te confrunți cu stabilirea permisiunilor corecte pentru fișiere și directoare în instalarea WordPress. Dacă te poți conecta la server prin SSH, nu este deloc o problemă.

  1. Resetează permisiunile tuturor fișierelor la 664:

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

  1. Resetează permisiunile directoarelor la 775:

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

  1. Obține utilizatorul care rulează Apache (Utilizatorul ar trebui să fie pe primul rând/coloană):

ps aux | grep apache

  1. Obține grupurile din care face parte utilizatorul:

groups [nume_utilizator]

  1. Resetează grupul la grupul care rulează Apache:

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

Acum ar trebui să poți actualiza WordPress automat din panoul de administrare.

16 feb. 2018 12:25:21
3
-1

Aceasta este o încercare la întâmplare, dar cumva ai vreun mu-plugin care ar putea cauza această problemă? wp-content/mu-plugins

6 ian. 2013 14:43:38
Comentarii

Mulțumesc pentru răspuns, dar nu, nu am instalat niciun mu-plugin.

Max Min Max Min
6 ian. 2013 14:50:34

În mod normal, plugin-urile care se ocupă de roluri și capabilități nu ar trebui plasate în folderul mu-plugins. Rolurile și capabilitățile sunt setate fie la activarea plugin-ului, fie la activarea temei, deoarece sunt stocate în baza de date.

RRikesh RRikesh
6 ian. 2013 15:41:31

În plus, încercarea de a accesa obiectele de rol înainte de încărcarea plugin-urilor va genera o eroare fatală

shea shea
11 ian. 2013 04:03:39