2013-06-21 9 views
5

La mia prima pubblicazione, spero che qualcuno possa aiutarmi con questo errore che è apparso sul mio sito web a partire da mercoledì, non sono sicuro di come correggerlo da quando Non ho mai toccato il file .php.Errore: Avviso: creazione dell'oggetto predefinito dal valore vuoto

Se potessi ricevere aiuto, ne sarei davvero grato.

The website with error, located at the top of the page.

L'errore è:

avvertimento: Creazione oggetto predefinito dal valore vuoto in WhiteLight/funzioni/admin-hooks.php sulla linea 160

Here is the code from lines 150 -170

+0

Sembra che '$ query_context' è una variabile vuota, e quando si ha' $ query_context-> context = array(); ', si innesca che errore perché l'interprete deve supporre che '$ query_context' è un oggetto anche se non è stato definito come tale. – jraede

+1

@Cassie: fare clic sul link pastebin mi dice che ** "Questa incolla è stata rimossa!" ** Potresti includere il codice direttamente nella domanda per favore? Altrimenti la domanda non è più utile ad altri lettori con un problema simile. – honk

risposta

6

probabilmente significa che il tuo host abbia aggiornato il server a php 5.4.x. Si prega di fare riferimento a questa pagina su come risolvere il problema: PHP 5.4: disable warning "Creating default object from empty value"

In breve, è necessario disporre di un proprio gestore di errori oppure, se questo è l'unico punto in cui si verifica, è sufficiente renderlo un stdClass prima di renderlo un array in questo modo:

È anche possibile che l'aggiornamento di wordpress e dei relativi plugin risolva il problema. Non so molto su questo zona, però ...

+0

ha funzionato perfettamente! Grazie mille. – Baxter

1

Inserire questo all'inizio di WhiteLight/funzioni/admin-hooks.php per disabilitare gli avvisi:

error_reporting(E_ERROR); 
+0

Questo non risolve il problema, quella linea lo nasconde. –

1

questo non è davvero una correzione, ma dovrebbe fermare l'errore. Aggiungilo ai tuoi temi attivi functions.php /* Fermare errori se qualsiasi /error_reporting (E_ERROR | E_PARSE);/ errori STOP Fine */

1

Le 2 linee seguenti dovrebbero essere aggiunti admin-hooks.php poco prima della dichiarazione if on line 160:

$query_context = new stdClass(); 
$query_context->context = array(); 
+0

'$ query_context = new stdClass();' è il nucleo della soluzione :) – RozzA

0

Abbiamo PHP v5.4.24 e gli utenti stanno vedendo lo stesso errore quando non è loggato su Wordpress v4.3.1 con Wootique tema v1.6.11. Così ho aggiunto questa patch temporanea fino a quando una correzione è disponibile.

Aggiunto codice sotto per sopprimere l'errore. Inserisci prima 'se' dichiarazione admin-hooks.php:

/* suppress error with this */ 
ini_set('display_errors', 0); 

$query_context = new stdClass();  
$query_context->context = array();