WPML
状态
已解决
报告针对
WPML Translation Management 2.10.3
解决于
WPML Translation Management 2.10.4

问题概述

如果您通过前端编辑文章,且该文章是通过编程方式复制到其他语言的,则可能会收到类似以下的错误:

PHP Fatal error:  Uncaught Error: Call to a member function get_translation_job() on null in wp-contentpluginswpml-translation-managementinctranslation-jobshelperswpml-translation-job-helper-with-api.class.php:15

Stack trace:

#0 wp-contentpluginswpml-translation-managementinctranslation-jobshelperswpml-update-post-translation-data-action.class.php(12): WPML_Translation_Job_Helper_With_API->get_translation_job(NULL)

#1 wp-contentpluginswpml-translation-managementinctranslation-jobshelperswpml-update-translation-data-action.class.php(84): WPML_TM_Update_Post_Translation_Data_Action->populate_prev_translation(1020, Array)

#2 wp-contentpluginswpml-translation-managementinctranslation-jobshelperswpml-update-translation-data-action.class.php(33): WPML_TM_Update_Translation_Data_Action->get_translated_field_values(1020, Array)

#3 wp-contentpluginswpml-translation-managementincactionswpml-tm-action-helper.class.p in wp-contentpluginswpml-translation-managementinctranslation-jobshelperswpml-translation-job-helper-with-api.class.php on line 15

临时解决方法

请确保您清楚自己的操作,并已提前创建备份!

通过 FTP 客户端或主机面板,尝试编辑 /wp-content/plugins/wpml-translation-management/inc/translation-jobs/helpers/wpml-translation-job-helper-with-api.class.php 文件。
将以下两行:

		global $wpml_translation_job_factory;

		return $wpml_translation_job_factory->get_translation_job( $job_id, $include_non_translatable_elements, $revisions );

替换为这一行:
		return wpml_tm_load_job_factory()->get_translation_job( $job_id, $include_non_translatable_elements, $revisions );

所有已知问题 →