X7ROOT File Manager
Current Path:
/home/notabjze/hourglass.life/wp-content/plugins/bunyad-demo-import/inc
home
/
notabjze
/
hourglass.life
/
wp-content
/
plugins
/
bunyad-demo-import
/
inc
/
ðŸ“
..
📄
CustomizerImporter.php
(7.12 KB)
📄
CustomizerOption.php
(489 B)
📄
Downloader.php
(3.71 KB)
📄
Helpers.php
(21.57 KB)
📄
ImportActions.php
(5.99 KB)
📄
Importer.php
(6.19 KB)
📄
Logger.php
(1.38 KB)
📄
OneClickDemoImport.php
(14.61 KB)
📄
ReduxImporter.php
(2.26 KB)
📄
WPCLICommands.php
(9.29 KB)
📄
WXRImporter.php
(4.57 KB)
📄
WidgetImporter.php
(12.71 KB)
📄
menus.php
(6.94 KB)
Editing: WXRImporter.php
<?php /** * WXR importer class used in the One Click Demo Import plugin. * Needed to extend the WXR_Importer class to get/set the importer protected variables, * for use in the multiple AJAX calls. * * @package ocdi */ namespace OCDI; class WXRImporter extends \AwesomeMotive\WPContentImporter2\WXRImporter { protected $can_download_local = false; /** * Add a check if the attachment file is already available locally. * * +EDIT: Bunyad */ protected function process_attachment( $post, $meta, $remote_url ) { // We already have downloaded this file. Use the local URL. if ($this->can_download_local && isset($this->url_remap[ $remote_url ])) { $remote_url = $this->url_remap[ $remote_url ]; } return parent::process_attachment($post, $meta, $remote_url); } /** * Constructor method. * * @param array $options Importer options. */ public function __construct( $options = array() ) { parent::__construct( $options ); // Set current user to $mapping variable. // Fixes the [WARNING] Could not find the author for ... log warning messages. $current_user_obj = wp_get_current_user(); $this->mapping['user_slug'][ $current_user_obj->user_login ] = $current_user_obj->ID; // WooCommerce product attributes registration. if ( class_exists( 'WooCommerce' ) ) { add_filter( 'wxr_importer.pre_process.term', array( $this, 'woocommerce_product_attributes_registration' ), 10, 1 ); } // +EDIT: Bunyad add a test if local URLs work. $test = wp_remote_head(get_site_url()); if (!is_wp_error($test)) { $this->can_download_local = true; } } /** * Get all protected variables from the WXR_Importer needed for continuing the import. */ public function get_importer_data() { return array( 'mapping' => $this->mapping, 'requires_remapping' => $this->requires_remapping, 'exists' => $this->exists, 'user_slug_override' => $this->user_slug_override, 'url_remap' => $this->url_remap, 'featured_images' => $this->featured_images, ); } /** * Sets all protected variables from the WXR_Importer needed for continuing the import. * * @param array $data with set variables. */ public function set_importer_data( $data ) { $this->mapping = empty( $data['mapping'] ) ? array() : $data['mapping']; $this->requires_remapping = empty( $data['requires_remapping'] ) ? array() : $data['requires_remapping']; $this->exists = empty( $data['exists'] ) ? array() : $data['exists']; $this->user_slug_override = empty( $data['user_slug_override'] ) ? array() : $data['user_slug_override']; $this->url_remap = empty( $data['url_remap'] ) ? array() : $data['url_remap']; $this->featured_images = empty( $data['featured_images'] ) ? array() : $data['featured_images']; } /** * Hook into the pre-process term filter of the content import and register the * custom WooCommerce product attributes, so that the terms can then be imported normally. * * This should probably be removed once the WP importer 2.0 support is added in WooCommerce. * * Fixes: [WARNING] Failed to import pa_size L warnings in content import. * Code from: woocommerce/includes/admin/class-wc-admin-importers.php (ver 2.6.9). * * Github issue: https://github.com/proteusthemes/one-click-demo-import/issues/71 * * @param array $date The term data to import. * @return array The unchanged term data. */ public function woocommerce_product_attributes_registration( $data ) { global $wpdb; if ( strstr( $data['taxonomy'], 'pa_' ) ) { if ( ! taxonomy_exists( $data['taxonomy'] ) ) { $attribute_name = wc_sanitize_taxonomy_name( str_replace( 'pa_', '', $data['taxonomy'] ) ); // Create the taxonomy if ( ! in_array( $attribute_name, wc_get_attribute_taxonomies() ) ) { $attribute = array( 'attribute_label' => $attribute_name, 'attribute_name' => $attribute_name, 'attribute_type' => 'select', 'attribute_orderby' => 'menu_order', 'attribute_public' => 0 ); $wpdb->insert( $wpdb->prefix . 'woocommerce_attribute_taxonomies', $attribute ); delete_transient( 'wc_attribute_taxonomies' ); } // Register the taxonomy now so that the import works! register_taxonomy( $data['taxonomy'], apply_filters( 'woocommerce_taxonomy_objects_' . $data['taxonomy'], array( 'product' ) ), apply_filters( 'woocommerce_taxonomy_args_' . $data['taxonomy'], array( 'hierarchical' => true, 'show_ui' => false, 'query_var' => true, 'rewrite' => false, ) ) ); } } return $data; } }
Upload File
Create Folder