Come risolvere il problema della dashboard vuota in WordPress?

23 dic 2013, 11:54:43
Visualizzazioni: 54.6K
Voti: 44

Un sito della mia azienda utilizza un blog su WordPress 3.3.1 con un tema basato su Twenty Ten. La settimana scorsa ho aggiornato Apache e PHP sul nostro server di produzione. Successivamente la dashboard ha smesso di funzionare. Quando un utente effettua il login, appare una dashboard vuota. Il menu con i link è ancora presente, ma nessuno dei link funziona, quindi non è possibile creare nuovi post ecc. Nel codice sorgente della pagina vedo il seguente messaggio:

Fatal error: Access to undeclared static property: WP_Screen::$this in blog/wp-admin/includes/screen.php on line 706

Non sono state apportate modifiche alla configurazione di WordPress e non sono stati installati nuovi plugin. Come posso risolvere il problema?

1
Commenti

Perché non aggiorni alla versione stabile più recente di WordPress con supporto per le versioni più recenti di PHP?

bueltge bueltge
23 dic 2013 11:59:12
Tutte le risposte alla domanda 4
3
84

C'è un bug in WordPress 3.3.1 che causa il problema. Potrebbe interessare anche altre versioni.

Per risolvere il problema puoi aggiornare WordPress all'ultima versione stabile e successivamente eseguire test di integrazione. Oppure puoi applicare una rapida correzione al bug.

Per correggere il bug:

  1. Apri il file blog/wp-admin/includes/screen.php nel tuo editor di testo preferito.
  2. Sulla riga 706 trova la seguente istruzione PHP: <?php echo self::$this->_help_sidebar; ?>
  3. Sostituiscila con l'istruzione: <?php echo $this->_help_sidebar; ?>
  4. Salva le modifiche.

Spero che ti sia utile.

23 dic 2013 21:58:40
Commenti

Grazie, ho avuto lo stesso problema e l'ho risolto. Qual è il bug nella riga sopra? Perché inizialmente il mio sito funzionava perfettamente finché non ho visto questo errore.

Imran Subhani Imran Subhani
25 feb 2015 12:55:00

@Imran Il bug è un riferimento sintatticamente errato alla proprietà '_help_sidebar' di un'istanza della classe WP_Screen. Sembra che gli interpreti PHP prima di alcune versioni siano più tolleranti con questa istruzione, ma dopo l'aggiornamento a una versione più recente semplicemente segnalano l'errore.

Dmitry Lebedev Dmitry Lebedev
27 feb 2015 11:26:41

So che i commenti di "grazie" sono sconsigliati, ma questo ha richiesto secondi per essere implementato e ha letteralmente salvato il mio blog. Questo strano problema non sembra nemmeno apparire nei miei log degli errori.

1owk3y 1owk3y
12 feb 2017 09:12:01
3

La risposta di Dmitry riguardo alla sostituzione dell'istruzione PHP errata mi sembra la migliore:

Sostituisci <?php echo self::$this->_help_sidebar; ?>

Con <?php echo $this->_help_sidebar; ?>

24 dic 2013 15:10:29
Commenti

Modificare i file core non è mai consigliabile poiché perderai le modifiche durante gli aggiornamenti. Inoltre, per favore astieniti dal commentare nel thread delle risposte. Capisco che al momento non hai il privilegio di aggiungere commenti, ma manteniamo i thread delle risposte esclusivamente per le risposte.

Maruti Mohanty Maruti Mohanty
24 dic 2013 15:50:55

Vero, ma se questo white screen of death ti impedisce solo di aggiornare alla versione in cui questo bug è stato risolto (ovvero l'ultima :) ) allora questa è la soluzione più veloce. Le tue modifiche verranno immediatamente sovrascritte, quindi l'effetto collaterale indesiderato scompare.

Attila Fulop Attila Fulop
6 mar 2014 12:20:36

Sito che non toccavo da 10 anni ha appena avuto questo problema. Grazie, sono riuscito a risolverlo facilmente

beefaroni beefaroni
8 dic 2020 05:02:35
0

hai tre opzioni

  • Downgradare PHP - probabilmente non ti piacerà
  • Aggiornare WordPress - stai usando la 3.3.1? è comunque tempo di aggiornamento
  • Correggere l'errore nel core - Non è così male come sembra, dato che il codice "screen" controlla la schermata di aiuto e potresti non aver più bisogno di aiuto per utilizzare WordPress.
23 dic 2013 12:47:35
0

Anche se non hai apportato modifiche alla configurazione o aggiunto nuovi plugin a WordPress, l'aggiornamento della versione PHP sottostante potrebbe causare un conflitto con uno dei plugin che stavi già utilizzando con successo.

Dal momento che non riesci ad accedere alla dashboard di amministrazione per disabilitare i plugin, prova semplicemente a rinominare la tua cartella /wp-content/plugins in qualcosa come /wp-content/plugins-OLD e poi prova ad accedere nuovamente all'admin.

Se riesci ad accedere con successo dopo aver disabilitato i plugin, puoi procedere a riattivarli uno alla volta per individuare quale potrebbe essere il colpevole e mantenerlo disattivato finché non aggiorni il core di WordPress e il plugin stesso alle ultime versioni che, si spera, non presentino questi problemi.

23 dic 2013 20:47:04