function process_terms() { $term_translations = array(); // store this for future usage as parent function unsets $this->terms foreach ($this->terms as $term) { if ('post_translations' == $term['term_taxonomy']) { $this->post_translations[] = $term; } if ('term_translations' == $term['term_taxonomy']) { $term_translations[] = $term; } } parent::process_terms(); global $polylang; $polylang->model->clean_languages_cache(); // to update the languages list if needed if (($options = get_option('polylang')) && empty($options['default_lang']) && ($languages = $polylang->model->get_languages_list())) { // assign the default language if importer created the first language $default_lang = reset($languages); $options['default_lang'] = $default_lang->slug; update_option('polylang', $options); } $this->remap_terms_relations($term_translations); $this->remap_translations($term_translations, $this->processed_terms); }
/** * overrides WP_Import::process_terms to remap terms translations * * @since 1.2 */ function process_terms() { $term_translations = array(); // store this for future usage as parent function unsets $this->terms foreach ($this->terms as $term) { if ('post_translations' == $term['term_taxonomy']) { $this->post_translations[] = $term; } if ('term_translations' == $term['term_taxonomy']) { $term_translations[] = $term; } } parent::process_terms(); // update the languages list if needed // first reset the core terms cache as WordPress Importer calls wp_suspend_cache_invalidation( true ); wp_cache_set('last_changed', microtime(), 'terms'); PLL()->model->clean_languages_cache(); if (($options = get_option('polylang')) && empty($options['default_lang']) && ($languages = PLL()->model->get_languages_list())) { // assign the default language if importer created the first language $default_lang = reset($languages); $options['default_lang'] = $default_lang->slug; update_option('polylang', $options); } $this->remap_terms_relations($term_translations); $this->remap_translations($term_translations, $this->processed_terms); }
/** * Add an action at the process_term * * @see WP_Import::process_terms() */ public function process_terms() { parent::process_terms(); do_action('bunyad_import_process_terms', $this); }
public function wpImportContents($file) { $wp_import = new WP_Import(); $wp_import->fetch_attachments = false; // doesn matter // load data from saved option $wp_import->post_orphans = get_option('_cri_post_orphans', array()); $wp_import->processed_posts = get_option('_cri_processed_posts', array()); $wp_import->url_remap = get_option('_cri_url_remap', array()); // the odd filter add_filter('import_post_meta_key', array($wp_import, 'is_valid_meta_key')); add_filter('http_request_timeout', array(&$wp_import, 'bump_request_timeout')); // start buffer ob_start(); // parse file and gather data $wp_import->import_start($file); // map author $wp_import->get_author_mapping(); wp_suspend_cache_invalidation(true); $wp_import->process_categories(); $wp_import->process_tags(); $wp_import->process_terms(); $wp_import->process_posts(); wp_suspend_cache_invalidation(false); // update incorrect/missing information in the DB $wp_import->backfill_parents(); $wp_import->backfill_attachment_urls(); $wp_import->remap_featured_images(); // end has output, so buffer it out $wp_import->import_end(); // ignore the output, call in buffer do_action('radium_after_content_import'); ob_end_clean(); // delete all attachment related stats foreach (array('_cri_post_orphans', '_cri_processed_posts', '_cri_url_remap') as $op) { delete_option($op); } return true; }
public function process_terms() { $this->updateStats(__("Importing terms", 'Pixelentity Theme/Plugin')); parent::process_terms(); }