2009-08-20 1 views
23

は、私は約error_reporting(0);、およびini_set('display_errors', false);を知っているが、ワードプレスに登場する通知があります:WordPressにPHPの通知が表示されないようにするにはどうすればよいですか?

Notice: Array to string conversion in /var/www/vhosts/treethink.net/subdomains/parkridge/httpdocs/wp-includes/formatting.php on line 359

それはワードプレスではなく、サイトの他のページでのみが表示されますが。

phpinfo()を確認しました。エラーは表示されないようにすべて設定されています。なぜこれはまだ現れていますか?ここで

はエラーを生成ラインです:

function wp_check_invalid_utf8($string, $strip = false) { 
    $string = (string) $string; 

私ははギャラリーが働いていた方法を変更するために、ワードプレスでいくつかのこと変更をしました。しかし、この関数ではなく、私はこの関数への呼び出しを変更したとは思わない。表示される通知以外に、すべてが完全に正常に動作するように見える、私はこのエラーを隠すために取得する必要があります。

wp-config.php 

ファイルを、ここで次のように変更します:

+0

wpはerror_reportingとdisplay_errorsの値をどこか変更しませんか? – jmucchiello

+0

それは私が考えていたものですが、エラーはそこになかった –

+0

ああ、私はサイトで作業していたときに値を設定していました。 –

答えて

52

はあなたを編集する必要があり

error_reporting(0); 
@ini_set('display_errors', 0); 

がそうでなければWordpressのは、WP-ConfigでPHP.INI

+1

これは私のためには、設定ファイルがwp-settings.phpを呼び出した後、wp-configの最後にこれらの行を置かなければなりませんでした。 – Colin

+0

重要:現在のWordPressバージョンでは、これはもう動作しません。 WP_DEBUGを有効にすると、WordPressはerror_reportingオプションを上書きします。このソリューションは今日(2015年9月)動作していますhttp://stackoverflow.com/a/27997023/313501 – Philipp

+0

このソリューションは、通知だけでなく、すべてのエラーをオフにします。エリック・ヘンリーのソリューションが優れています。すべてのエラーを通知し、通知と警告のみを抑えることができます。 – jstice4all

9

によって設定されたアラートを上書きします。 phpこの行を追加:

define('WP_DEBUG_DISPLAY', false); 

これは、ページへの通知と警告の表示を有効または無効にします。あなたはこの機能から来ているだけで、エラーを非表示にする場合

http://codex.wordpress.org/Debugging_in_WordPress

+0

これは私のために働いた - 私はそれをwp-config.phpの一番上に置く必要があった。ありがとうございます(^ _ ^)* – adamS

1

はあなたと

@function wp_check_invalid_utf8($string, $strip = false) 
{ 

} 
7

2015年1月を使用することができます。ここでは、このオプションのより完全な説明、およびいくつかの関連オプションがあり、最新のWordpress、上のどれも私のために働くものではありません。

私はここからの回答を得ました...何でもしたいという名前を付け

<?php 
error_reporting(E_ALL & ~(E_NOTICE | E_USER_NOTICE | E_STRICT | 
E_DEPRECATED | E_USER_DEPRECATED | E_WARNING | E_CORE_WARNING | 
E_USER_WARNING | E_COMPILE_WARNING | E_PARSE)); 

:ワードプレスのMU-pluginsフォルダ内のphpファイルを作成

のように、働いていましたhttps://wycks.wordpress.com/2013/12/05/how-to-remove-error-notices-using-wordpresss-wp_debug/

+0

これは実際にはWP_DEBUGとWP_DEBUG_DISPLAYを使用することができますが、PHPの通知のみを隠すので、ここでは最高のソリューションです。他の解決策は動作していないか、すべてのデバッグ出力を完全に無効にしています – Philipp

+0

マイナーチェンジ:私にとっては、この行だけが必要です:error_reporting(E_ALL&〜(E_NOTICE)); – ssaltman

0
/** 
* For developers: WordPress debugging mode. 
* 
* Change this to true to enable the display of notices during development. 
* It is strongly recommended that plugin and theme developers use WP_DEBUG 
* in their development environments. 
*/ 
define('WP_DEBUG', false); 

// Enable Debug logging to the /wp-content/debug.log file 
define('WP_DEBUG_LOG', false); 

// Disable display of errors and warnings 
define('WP_DEBUG_DISPLAY', false); 
@ini_set('display_errors', 0); 

私が使っているのは最新のWordPressバージョンで動作します。

1

ほとんどの場合、これらは心配することはほとんどありません(ただし、プラグイン/テーマ開発者はこれらについて知っておく必要がありますが、将来のリリースで修正する可能性があります)。 PHPの警告と注意事項は、ほとんどの場合、プロダクションサイトで心配するものではありません。 これらのうちのいくつかは、開発者が古いバージョンのWordPressと旧バージョンのPHPとの互換性を維持しなければならないため生成されることさえあります。この

ini_set('log_errors','On'); 
ini_set('display_errors','Off'); 
ini_set('error_reporting', E_ALL); 
define('WP_DEBUG', false); 
define('WP_DEBUG_LOG', true); 
define('WP_DEBUG_DISPLAY', false); 

define('WP_DEBUG', false); 

あなたのwp-config.phpファイルで偽にあなたは、単にセットWP_DEBUG場合あなたは問題ないはずです。これらはあなたのサイトにいかなる影響も与えません。

しかし、問題は上記のいくつかの時間が機能しないことです。 これは、PHPの警告と通知を強制的に表示する安価な共有ホストで、ほとんどの場合発生する可能性があります。 この場合、wp-config.phpファイルからこの行を置き換えることができます:

関連する問題