我突然得到了对未定义函数wp_parse_list()的调用

时间:2019-02-26 作者:haxpanel

我今天早上醒来,发现以下错误:

致命错误:未捕获错误:调用/app/public中未定义的函数wp\\u parse\\u list()。已生成/wp包括/类wp注释查询。php:485堆栈跟踪:#0/应用程序/公共。已生成/wp包括/类wp注释查询。php(395):WP\\u Comment\\u Query->get\\u Comment\\u ids()\\1/app/public。已生成/wp包括/类wp注释查询。php(346):WP\\u Comment\\u Query->get\\u comments()\\2/app/public。构建/可湿性粉剂包括/注释。php(242):WP\\u Comment\\u Query->Query(Array)#3/app/public。内置/wp管理/包含/类wp注释列表。php(147):get\\u comments(Array)#4/app/public。生成/wp管理/编辑注释。php(140):WP\\u Comments\\u List\\u Table->prepare\\u items()\\5{main}抛出/app/public。已生成/wp包括/类wp注释查询。php在线485

昨天晚上,我从5.0.3升级到了5.1。我使用的是WP REST API,我不确定客户端是否缓存了它的响应,这也是今天才注意到这一点的原因。。。

我甚至不使用WP中的注释。这可以完全关闭吗?或者有没有人经历过这种情况?恐怕生产缓存也会过期,很快就会停止。谢谢

UPDATE:降级回5.0.3后,此问题已解决。然而,这个问题仍然悬而未决。

1 个回复
SO网友:André Kelling

看起来这是自5.1.0以来的一个新函数。请参见此处的信息:https://de.wpseek.com/function/wp_parse_list/

您可以尝试将其添加到主题函数中。php临时作为一种解决方法。

function wp_parse_list( $list ) {
    if ( ! is_array( $list ) ) {
        return preg_split( \'/[\\s,]+/\', $list, -1, PREG_SPLIT_NO_EMPTY );
    }

    return $list;
}
正如你所猜测的:我认为这也与缓存有关。

相关推荐

为什么dbDelta()不能捕获MysqlErrors?

据我所见,dbDelta() 用于抑制在其操作过程中发生的数据库错误。一般来说,情况似乎是这样,但New Relic仍在报告函数中的MysqlErrors。准确的错误消息格式如下:MysqlError: Table \'xxx.wp_yyy_posts\' doesn\'t exist 发件人dbDelta() 在里面/wp-admin/includes/upgrade.php, 我们有:// Fetch the table column structure from the database&