WPML
状态
已解决

问题概述

安装 HyperDB 后,在创建翻译副本时,您可能会遇到以下错误:

WordPress database error Field 'translator_id' doesn't have a default value for query INSERT INTO `wp_icl_translation_status` (`status`, `translation_id`) VALUES ('9', '3855') made by WPML_Post_Status::set_status

原因是 HyperDB 启用了不兼容的 SQL 模式:'NO_ZERO_DATE’、'ONLY_FULL_GROUP_BY’、'STRICT_TRANS_TABLES’、'STRICT_ALL_TABLES’、'TRADITIONAL’。从 WordPress 3.9 及更高版本开始,这些模式被声明为不兼容,并在标准的 wpdb 类中被关闭。

如果在您服务器的 MySQL 设置中设置了此类不兼容的模式,并且站点上安装了 HyperDB,那么在 WPML 中创建副本时就会出现错误。

WPML 开发团队为 WordPress 官方支持的功能提供支持,因此无法在 WPML 核心代码中包含针对 HyperDB 的修复程序。

临时解决方法

我们创建了一个名为 WPML HyperDB 的专用插件,用于修复上述问题。可以在此处下载该插件。

所有已知问题 →