问题概述
debug.log 内容中存在以下错误:
WordPress database error Table 'wp_icl_strings' doesn't exist for query…
WordPress database error Table 'wp_icl_string_translations' doesn't exist for query…
这些错误会导致以下问题:
- 在 WPML字符串翻译页面上没有字符串。
- 在 WPML主题和插件本地化页面上扫描主题和/或插件字符串时,未找到任何字符串。
您可能还会看到以下无法忽略的通知:
我们检测到数据库中的某些表存在问题。请联系 WPML 支持以解决此问题。Array ( en =>
临时解决方法
当 WPML 的激活未完成时,会发生这些错误。我们尚不确定此问题是如何准确复现的。
只有在您没有翻译的情况下,您才可以前往 WPML > 支持 > 重置 WPML(在 WPML 5.0 及更高版本中,重置 WPML 随 WPML Troubleshooting 插件提供,可通过 WPML > 激活 & 更新 进行安装)
如果您已经有翻译,可以使用以下临时解决方法并继续使用 WPML。
- 对您的站点(文件和数据库)进行完整备份。WordPress.org (在新标签页中打开)上有许多免费插件可用于此目的。
- 将此代码添加到您主题根目录下的functions.php文件底部。
function wpml_fix_missing_icl_tables() { if( function_exists( 'icl_sitepress_activate' ) ) icl_sitepress_activate(); } add_action( 'wp_footer', 'wpml_fix_missing_icl_tables' );
- 至少访问一次您站点的首页。
- 移除该代码。