我按照 Wordpress 中提到的说明进行操作,但我仍然收到错误并转介 Google,我很震惊地看到许多博客都有相同的问题,并且尚未修复,这些博客已在 Google 中编入索引,请尝试搜索“调用未定义函数require_wp_db()" 或在这里找到
任何建议如何解决?提前致谢
如果您不上传 wp-config.php 或所有其他版本之间已更改的文件,则偶尔会发生这种情况。
从WP Release Archive下载您尝试升级的 WP 版本的干净副本。
使用您的数据库详细信息、密钥等更新 wp-config.php。
删除服务器上除/wp-content 之外的所有文件(希望您已按照他们的建议将所有自定义增强功能降级到 /wp-content/themes 目录 - 否则您将不得不针对每个单独的文件进行比较,除非您已经跟踪您的更改)。
上传除 /wp-content 目录之外的所有干净文件
运行 /wp-admin/upgrade.php
这个问题可能在这个网站上放错了地方,但这个错误的原因可能是一般的编程错误。
您的问题可能源于不明确的包含路径。使用 include / require / include_once / etc 时...如果文件路径不是绝对的,则包含的文件可能不是预期的文件。在这里阅读为什么。要修复不明确的包含指令,请在相对路径前加上dirname(__FILE__).'/'
.
一个插件甚至你的主题可能是罪魁祸首。像这样的正则表达式可以帮助您找到这种情况:(include|require)(\_once)?\s*\(?\s['"][^\/]
我有一个用于多站点安装的 Wordpress 主题,其中包含如下文件:
require_once('sites.php');
因为 sites.php 是同一目录中的文件(并且因为服务器的包含路径包含“.” - 当前目录),所以它可以工作。
但是,由于sites.php 也存在于/wp-admin/network/sites.php 中,因此在尝试访问网络仪表板时,此行会导致以下错误:
致命错误:在第 19 行的 /www/OCE/WEBEDITOR2/wp-admin/network/sites.php 中调用未定义函数 _get_list_table()
在尝试其他答案中的说明无济于事后,我通过查找并将此行更改为:
require_once( dirname(__FILE__).'/sites.php' );
注意:在大多数情况下,如果只是为了消除其他可能的问题,应首先使用Mark 建议的解决方案来尝试在升级 Wordpress 后修复此错误。