- 状态
- 已解决
- 类型
- Bug
- 报告对象
- WPML Multilingual CMS 4.6.3
- 解决版本
- WPML 4.6.5
- 主题标签
- Bug
问题概述
我们发现了一个问题,即 WPML 通知有时会导致致命错误。该问题是由数据库中的 wpml_notices 键损坏引起的。因此,您可能会遇到类似的错误消息:
Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, null given in ...\wp-content\plugins\sitepress-multilingual-cms\classes\notices\class-wpml-notices.php:373 Stack trace: #0 ...\wp-content\plugins\sitepress-multilingual-cms\classes\notices\class-wpml-notices.php(159): WPML_Notices->group_and_id_exist('taxonomy-term-h...', 'brand') #1 ...\wp-content\plugins\sitepress-multilingual-cms\classes\notices\class-wpml-notices.php(112): WPML_Notices->notice_exists(Object(WPML_Notice)) #2 ...\wp-content\plugins\sitepress-multilingual-cms\classes\taxonomy-term-translation\class-wpml-taxonomy-translation-help-notice.php(111): WPML_Notices->add_notice(Object(WPML_Notice)) #3 ...\wp-content\plugins\sitepress-multilingual-cms\classes\taxonomy-term-translation\class-wpml-taxonomy-translation-help-notice.php(70): WPML_Taxonomy_Translation_Help_Notice->add_term_help_notice_to_admin_notices() #4 ...\wp-includes\class-wp-hook.php(308): WPML_Taxonomy_Translation_Help_Notice->add_help_notice('') #5 ...\wp-includes\class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array) #6 ...\wp-includes\plugin.php(517): WP_Hook->do_action(Array) #7 ...\wp-admin\admin.php(175): do_action('admin_init') #8 ...\wp-admin\edit-tags.php(10): require_once('...') #9 {main} thrown in ...\wp-content\plugins\sitepress-multilingual-cms\classes\notices\class-wpml-notices.php on line 373
临时解决方法
针对此问题的当前临时解决方法是从选项表中删除 wpml_notices 键。
- 在继续操作前,请确保已对站点进行完整备份。
- 访问您的数据库。
- 打开 wp_options 表。
- 查找 wpml_notices 键。
- 将其删除。
它会自动重新生成,并且错误应该会消失。