WPML
状态
已解决
报告针对
WPML Multilingual CMS 4.5.12
解决于
4.6.0
主题标签
ATE, Bug

问题概述

当您前往 WPML翻译管理 尝试更新翻译或将新的翻译任务添加到翻译篮时,会出现以下 PHP 错误:

Fatal error: Uncaught Exception: DateTime::__construct(): Failed to parse time string in …/wp-content/plugins/sitepress-multilingual-cms/classes/jobs/class-wpml-tm-jobs-repository.php on line 155

临时解决方法

在继续操作之前,请务必对您的网站进行完整备份


  1. 打开 wp-content/plugins/sitepress-multilingual-cms/classes/jobs/query/StringQuery.php 文件。

  2. 找到第 49 行。

  3. 将:
    	public function get_data_query( WPML_TM_Jobs_Search_Params $params ) {
    		$columns = array(
    			'string_translations.id as id',
    			'"' . WPML_TM_Job_Entity::STRING_TYPE . '" as type',
    			'string_status.rid as tp_id',
    			'batches.id as local_batch_id',
    			'batches.tp_id as tp_batch_id',
    			$this->batch_name_column,
    			'string_translations.status as status',
    			'strings.id as original_element_id',
    			'strings.language as source_language',
    			'string_translations.language as target_language',
    			'string_translations.translation_service as translation_service',
    			'string_status.timestamp as sent_date',
    			'NULL as deadline_date',
    			'NULL as completed_date',
    			'strings.value as title',
    			'source_languages.english_name as source_language_name',
    			'target_languages.english_name as target_language_name',
    			'string_translations.translator_id as translator_id',
    			'NULL as translate_job_id',
    			'core_status.tp_revision AS revision',
    			'core_status.ts_status AS ts_status',
    			'NULL AS needs_update',
    			'NULL AS editor',
    			'string_translations.status = ' . ICL_TM_COMPLETE . '  AS has_completed_translation',
    			'NULL AS editor_job_id',
    			'0 AS automatic',
    			'NULL AS review_status',
    			'NULL AS trid',
    			'NULL AS element_type',
    			'NULL AS job_title',
    		);
    
    		return $this->build_query( $params, $columns );
    	}

    替换为:

    	    public function get_data_query( WPML_TM_Jobs_Search_Params $params ) {
            $columns = array(
                'string_translations.id as id',
                '"' . WPML_TM_Job_Entity::STRING_TYPE . '" as type',
                'string_status.rid as tp_id',
                'batches.id as local_batch_id',
                'batches.tp_id as tp_batch_id',
                $this->batch_name_column,
                'string_translations.status as status',
                'strings.id as original_element_id',
                'strings.language as source_language',
                'string_translations.language as target_language',
                'NULL AS trid',
                'NULL AS element_type',
                'string_translations.translation_service as translation_service',
                'string_status.timestamp as sent_date',
                'NULL as deadline_date',
                'NULL as completed_date',
                'strings.value as title',
                'source_languages.english_name as source_language_name',
                'target_languages.english_name as target_language_name',
                'string_translations.translator_id as translator_id',
                'NULL as translate_job_id',
                'core_status.tp_revision AS revision',
                'core_status.ts_status AS ts_status',
                'NULL AS needs_update',
                'NULL AS editor',
                'string_translations.status = ' . ICL_TM_COMPLETE . '  AS has_completed_translation',
                'NULL AS editor_job_id',
                '0 AS automatic',
                'NULL AS job_title',
                'NULL AS review_status',
                'NULL AS element_id',
            );
    
            return $this->build_query( $params, $columns );
        }

所有已知问题 →