我知道error_reporting(0);
和ini_set('display_errors', false);
,但有一个通知出现在wordpress中:
注意: /var/www/vhosts/treethink.net/subdomains/parkridge/httpdocs/wp-includes/formatting.php 中的数组到字符串转换 359
只出现在wordpress中,而不是网站的任何其他页面。
我检查了phpinfo()
,并且设置了所有内容,以便不显示错误。为什么这个仍然出现?
以下是生成错误的行:
function wp_check_invalid_utf8( $string, $strip = false ) {
$string = (string) $string;
我做了更改wordpress中的一些内容,以改变库的工作方式。但不是这个函数,我也不认为我改变了对这个函数的任何调用。除了出现的通知外,一切似乎都运行得很好,我只需要隐藏这个错误。
答案 0 :(得分:51)
您需要编辑:
wp-config.php
文件并在此处修改以下内容:
error_reporting(0);
@ini_set('display_errors', 0);
否则Wordpress会覆盖PHP.INI设置的ALERTS
答案 1 :(得分:9)
在wp-config.php中添加以下行:
define('WP_DEBUG_DISPLAY', false);
这将启用或禁用向页面显示通知和警告。这里有一个更全面的描述,以及一些相关的选项:
答案 2 :(得分:9)
2015年1月,使用最新的Wordpress,以上都不适用于我。
在Wordpress的mu-plugins文件夹中创建一个php文件,如:
<?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 ));
只需将它命名为任何你想要的东西......
我从这里得到了答案:
https://wycks.wordpress.com/2013/12/05/how-to-remove-error-notices-using-wordpresss-wp_debug/
答案 3 :(得分:1)
如果您只想隐藏来自此功能的错误,您可以使用
@function wp_check_invalid_utf8( $string, $strip = false )
{
}
答案 4 :(得分:1)
大多数情况下这些都不用担心(尽管插件/主题开发人员应该知道这些,以便他们可以在将来的版本中修复它们)。在大多数情况下,PHP警告和通知在生产站点上无需担心。 其中一些甚至可以生成,因为开发人员必须保持与旧版WordPress以及旧版PHP版本的兼容性。
define('WP_DEBUG', false);
用这个
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);
如果您在 wp-config.php文件中将WP_DEBUG设置为false ,那么您应该没问题。这些不会以任何方式影响您的网站。
然而,问题是有时候上述情况不起作用。 在强制显示PHP警告和通知的廉价共享主机上,这种情况大多数时间都会发生。 在这种情况下,您可以从wp-config.php文件替换此行:
答案 5 :(得分: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版本。