Panoramica del problema
Se stai modificando un articolo tramite il front-end e quell’articolo è stato duplicato in altre lingue programmaticamente, è possibile ricevere un errore come questo:
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
Soluzione alternativa
Questo problema è stato risolto in WPML Translation Management 2.10.4. L'aggiornamento risolve il problema sul tuo sito, quindi hai bisogno di questa soluzione alternativa solo se non puoi ancora aggiornare.
Assicurati di sapere cosa stai facendo e di aver prima creato un backup!
Tramite client FTP o dal tuo pannello di hosting, prova a modificare il file in /wp-content/plugins/wpml-translation-management/inc/translation-jobs/helpers/wpml-translation-job-helper-with-api.class.php
Sostituisci queste due righe:
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 );