2013-06-21 6 views
5

初めて投稿したとき、私は水曜日の私のウェブサイトにこのエラーが表示されたら助けてくれることを願っています。 .phpファイルには決して触れていません。エラー:警告:空の値からデフォルトオブジェクトを作成

私はいくつかの助けを得ることができたら、私は本当に感謝しています。

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

エラーは次のとおりです。

警告:このおそらく手段160

Here is the code from lines 150 -170

+0

ルックス:管理者-hooks.phpで文が '場合' の前に挿入しますなぜなら、インタプリタは '$ query_context'がそのように定義されていなくてもオブジェクトであると仮定しなければならないからです。 – jraede

+1

@Cassie:あなたのペーストビンのリンクをクリックすると、** "このペーストは削除されました!" **あなたは質問に直接コードを含めることができますか?それ以外の場合は、類似の問題を抱える他の読者にはもう質問は役に立ちません。 – honk

答えて

6

ライン上にホワイトライト/機能/管理者-hooks.phpに空の値から、デフォルトのオブジェクトを作成しますあなたのホストがサーバーをPHP 5.4.xにアップグレードしたことを確認します。 PHP 5.4: disable warning "Creating default object from empty value"

要するに、独自のエラーハンドラが必要です。これが発生する唯一の場所であれば、それを作成する前にstdClassにするだけです。次のように配列してください:

} // End IF Statement 

if (!is_object($query_context)) { 
    $query_context = new stdClass(); 
}   

$query_context->context = array(); 

また、wordpressとそのプラグインをアップグレードすることで問題を解決することもできます。私は

+0

完璧に作業しました!どうもありがとうございます。 – Baxter

1

が警告を無効にするホワイトライト/機能/管理者-hooks.phpの初めにこれを挿入...しかし、その領域についてあまり知らない:

error_reporting(E_ERROR); 
+0

これは問題を解決しません。その行はそれを隠すだけです。 –

1

これは本当に修正ではなく、エラーを停止する必要があります。/*はエラーを停止 のfunctions.phpあなたのアクティブなテーマにそれを追加した場合は任意の/のerror_reporting(E_ERROR | E_PARSE);/エンドストップエラー*/

次の2行は、ちょうど if文の前 admin-hooks.phpに追加する必要があります
1

ライン160上:

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

'$ query_context = new stdClass();'はソリューションの中核です:) – RozzA

0

我々はPHPのv5.4.24を持っており、ユーザーがログインしていないWootiqueテーマv1.6.11とWordpressのv4.3.1で同じエラーが表示されます。だから私はこの一時パッチを修正が利用可能になるまで追加した。

エラーを抑制する以下のコードを追加しました。 ; `、それはそれをトリガーの$ query_context`が空の変数である`のように、あなたは `$ query_context->コンテキスト=配列()を持っているとき

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

$query_context = new stdClass();  
$query_context->context = array(); 
関連する問題