WPML

问题概述

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。

  1. 对您的站点(文件和数据库)进行完整备份。WordPress.org (在新标签页中打开)上有许多免费插件可用于此目的。
  2. 将此代码添加到您主题根目录下的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' );
  1. 至少访问一次您站点的首页。
  2. 移除该代码。

所有已知问题