Drupal-batch taxonomyterm language mode conversion project for a project has two languages: taxonomy term language mode is Translate and Localize.
$ Debug = true; $ machine_name = 'clinical _ centres '; $ root = require ($ machine_name); $ root-> i18n_mode = 1; taxonomy_vocabulary_save ($ root ); $ tree = i18n_taxonomy_get_tree ($ root-> vid, 'en'); dsm ($ tree); $ tree_new = array (); foreach ($ tree as $ index => $ term) {$ term_und = i18n_taxonomy_term_get_translation ($ term, 'und '); $ term_new = $ term_und? $ Term_und: new stdClass (); $ term_new-> name = $ term-> name; $ term_new-> description = $ term-> description; $ term_new-> format = 'full _ html '; $ term_new-> vocabulary_machine_name = $ machine_name; $ term_new-> language = 'und '; $ term_new-> vid = $ root-> vid; // $ root_new-> vid; $ term_new-> parent [0] = 0; $ term_new-> weight = $ term-> weight; if ($ term-> parents [0]> 0) {foreach ($ tree as $ tmp_index => $ tmp) {if (in_array ($ tmp-> tid, $ term-> parents) {$ term_new-> parent [0] = $ tree_new [$ tmp_index]-> tid; break ;}}taxonomy_term_save ($ term_new); $ tree_new [$ index] = $ term_new; $ translation_set = i18n_translation_set_load ($ term-> i18n_tsid); if ($ translation_set) {$ term_zh = $ translation_set-> get_item ('zh-hant '); $ term_en = $ translation_set-> get_item ('en'); // Translation i18n_string_textgroup ('taxono'my ') -> update_translation (array ('term ', $ term_new-> tid, 'name'), 'zh-hant', $ term_zh-> name); i18n_taxonomy_taxonomy_term_delete ($ term_zh ); taxonomy_term_delete ($ term_zh-> tid); then ($ term_en); taxonomy_term_delete ($ term_en-> tid); $ translation_set-> get_translations (); $ translation_set-> remove_language ('zh-hant '); $ translation_set-> remove_language ('en'); $ translation_set-> update_delete ();}}