如何在自定义function.php中找到WordPress代码的损坏部分(包含大量内部文件)?

knpiaxh1  于 2023-08-03  发布在  WordPress
关注(0)|答案(1)|浏览(88)

我的网站显示以下错误,问题是我不知道我的函数中的哪一行和哪一个文件。phpset有问题!
我在wp-config.php文件define('WP_DEBUG',true)中设置了以下代码为true;

Notice: Object of class WP_Error could not be converted to int in /home/aluper/public_html/wp-includes/functions.php on line 5360

Notice: Object of class WP_Error could not be converted to int in /home/aluper/public_html/wp-includes/pluggable.php on line 33

字符串
让我进一步解释一下,我的function.php文件包含了其他几个在function.php内部调用的php文件(和我的function.php文件本身最终是100行代码),当我收到上述错误代码时,我如何知道我的function.php中的哪个(导入)文件以及该文件的哪一行有问题?!
我知道所有文件的代码都可以重新插入到function.php文件中,但我认为应该有更合理、更简单的方法。
例如,我的function.php文件如下:

require_once('template-parts/1.php');
require_once('template-parts/2.php');
require_once('template-parts/3.php');
require_once('template-parts/4.php');
require_once('template-parts/5.php');
require_once('template-parts/6.php');
require_once('template-parts/7.php');
require_once('template-parts/8.php');
require_once('template-parts/9.php');
require_once('template-parts/10.php');
and....

补充问题:

您建议用什么解决方案来管理WordPress中不需要的错误消息或警告?

j8ag8udp

j8ag8udp1#

两件事
首先,您不想要的消息是通知,而不是错误。如果你关闭WP_DEBUG,它们可能会消失。它们可能是,也可能不是,来自php版本兼容性问题(你没有告诉我们你使用的php版本)。如果你同时打开WP_DEBUG和WP_DEBUG_LOG,你可能会(也可能不会)在你的.../wp-content/debug.log文件中看到完整的函数追溯。也许能帮你找到他们。
其次,.../wp-includes/functions.php与主题的函数文件不是同一个文件。这是一个核心的WordPress文件。在这种情况下,有问题的函数是absint()。看起来像某个地方的代码试图将错误对象转换为正整数。太奇怪了。但这种混淆在WordPress代码中相当常见。另一个错误类似。
追踪问题的根源需要追溯。

相关问题