Product Import Export for WooCommerce - Version 2.1.9

Version Description

2022-04-11 = * WC 6.3 Tested OK. * General settings - Option to Include BOM(Byte order mark) in export file to have better special character support. * Fix: Category and Tag name contains & is exported to the CSV as "&amp"

Download this release

Release Info

Developer webtoffee
Plugin Icon 128x128 Product Import Export for WooCommerce
Version 2.1.9
Comparing to
See all releases

Code changes from version 2.1.8 to 2.1.9

admin/class-wt-import-export-for-woo-admin.php CHANGED
@@ -102,6 +102,16 @@ class Wt_Import_Export_For_Woo_Admin_Basic {
102
  wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/wt-import-export-for-woo-admin.js', array( 'jquery'), $this->version, false );
103
  wp_enqueue_script(WT_IEW_PLUGIN_ID_BASIC.'-tiptip', WT_P_IEW_PLUGIN_URL.'admin/js/tiptip.js', array('jquery'), WT_P_IEW_VERSION, false);
104
  }
 
 
 
 
 
 
 
 
 
 
105
 
106
  $params=array(
107
  'nonces' => array(
@@ -128,43 +138,50 @@ class Wt_Import_Export_For_Woo_Admin_Basic {
128
  'url' => "https://www.webtoffee.com/product/order-import-export-plugin-for-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Order_Import_Export&utm_content=" . WT_P_IEW_VERSION,
129
  'name' => __('Order, Coupon, Subscription Export Import for WooCommerce'),
130
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/order-ie.svg',
131
- 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/03/Order_SampleCSV.csv"
 
132
  ),
133
  'coupon' => array(
134
  'url' => "https://www.webtoffee.com/product/order-import-export-plugin-for-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Order_Import_Export&utm_content=" . WT_P_IEW_VERSION,
135
  'name' => __('Order, Coupon, Subscription Export Import for WooCommerce'),
136
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/order-ie.svg',
137
- 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2016/09/Coupon_Sample_CSV.csv"
 
138
  ),
139
  'product' => array(
140
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
141
  'name' => __('Product Import Export Plugin For WooCommerce'),
142
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
143
- 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/03/Product_SampleCSV.csv"
 
144
  ),
145
  'product_review' => array(
146
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
147
  'name' => __('Product Import Export Plugin For WooCommerce'),
148
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
149
- 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/04/product_review_SampleCSV.csv"
 
150
  ),
151
  'product_categories' => array(
152
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
153
  'name' => __('Product Import Export Plugin For WooCommerce'),
154
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
155
- 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/09/Sample-CSV-of-product-categories.csv"
 
156
  ),
157
  'product_tags' => array(
158
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
159
  'name' => __('Product Import Export Plugin For WooCommerce'),
160
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
161
- 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/09/Sample-CSV-with-product-tags.csv"
 
162
  ),
163
  'user' => array(
164
  'url' => "https://www.webtoffee.com/product/wordpress-users-woocommerce-customers-import-export/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=User_Import_Export&utm_content=" . WT_P_IEW_VERSION,
165
  'name' => __('WordPress Users & WooCommerce Customers Import Export'),
166
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/user-ie.svg',
167
- 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2020/10/Sample_Users.csv"
 
168
  )
169
  )
170
  );
@@ -275,7 +292,7 @@ class Wt_Import_Export_For_Woo_Admin_Basic {
275
  }
276
  }
277
 
278
- $checkbox_items = array( 'wt_iew_enable_import_log', 'wt_iew_enable_history_auto_delete' );
279
  foreach ( $checkbox_items as $checkbox_item ){
280
  $new_advanced_settings[$checkbox_item] = isset( $new_advanced_settings[$checkbox_item] ) ? $new_advanced_settings[$checkbox_item] : 0;
281
  }
@@ -445,5 +462,31 @@ class Wt_Import_Export_For_Woo_Admin_Basic {
445
  $links[] = '<a href="https://www.webtoffee.com/support/" target="_blank">'.__('Support').'</a>';
446
  return $links;
447
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
448
  }
449
  }
102
  wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/wt-import-export-for-woo-admin.js', array( 'jquery'), $this->version, false );
103
  wp_enqueue_script(WT_IEW_PLUGIN_ID_BASIC.'-tiptip', WT_P_IEW_PLUGIN_URL.'admin/js/tiptip.js', array('jquery'), WT_P_IEW_VERSION, false);
104
  }
105
+
106
+ $order_addon_active_status = false;
107
+ $user_addon_active_status = false;
108
+ if(is_plugin_active( 'order-import-export-for-woocommerce/order-import-export-for-woocommerce.php' )){
109
+ $order_addon_active_status = true;
110
+ }
111
+ if(is_plugin_active( 'users-customers-import-export-for-wp-woocommerce/users-customers-import-export-for-wp-woocommerce.php' )){
112
+ $user_addon_active_status = true;
113
+ }
114
+
115
 
116
  $params=array(
117
  'nonces' => array(
138
  'url' => "https://www.webtoffee.com/product/order-import-export-plugin-for-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Order_Import_Export&utm_content=" . WT_P_IEW_VERSION,
139
  'name' => __('Order, Coupon, Subscription Export Import for WooCommerce'),
140
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/order-ie.svg',
141
+ 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/03/Order_SampleCSV.csv",
142
+ 'is_active' => $order_addon_active_status
143
  ),
144
  'coupon' => array(
145
  'url' => "https://www.webtoffee.com/product/order-import-export-plugin-for-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Order_Import_Export&utm_content=" . WT_P_IEW_VERSION,
146
  'name' => __('Order, Coupon, Subscription Export Import for WooCommerce'),
147
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/order-ie.svg',
148
+ 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2016/09/Coupon_Sample_CSV.csv",
149
+ 'is_active' => $order_addon_active_status
150
  ),
151
  'product' => array(
152
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
153
  'name' => __('Product Import Export Plugin For WooCommerce'),
154
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
155
+ 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/03/Product_SampleCSV.csv",
156
+ 'is_active' => true
157
  ),
158
  'product_review' => array(
159
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
160
  'name' => __('Product Import Export Plugin For WooCommerce'),
161
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
162
+ 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/04/product_review_SampleCSV.csv",
163
+ 'is_active' => true
164
  ),
165
  'product_categories' => array(
166
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
167
  'name' => __('Product Import Export Plugin For WooCommerce'),
168
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
169
+ 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/09/Sample-CSV-of-product-categories.csv",
170
+ 'is_active' => true
171
  ),
172
  'product_tags' => array(
173
  'url' => "https://www.webtoffee.com/product/product-import-export-woocommerce/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=Product_Import_Export&utm_content=" . WT_P_IEW_VERSION,
174
  'name' => __('Product Import Export Plugin For WooCommerce'),
175
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/product-ie.svg',
176
+ 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2021/09/Sample-CSV-with-product-tags.csv",
177
+ 'is_active' => true
178
  ),
179
  'user' => array(
180
  'url' => "https://www.webtoffee.com/product/wordpress-users-woocommerce-customers-import-export/?utm_source=free_plugin_revamp&utm_medium=basic_revamp&utm_campaign=User_Import_Export&utm_content=" . WT_P_IEW_VERSION,
181
  'name' => __('WordPress Users & WooCommerce Customers Import Export'),
182
  'icon_url' => WT_P_IEW_PLUGIN_URL.'assets/images/gopro/user-ie.svg',
183
+ 'sample_csv_url' => "https://www.webtoffee.com/wp-content/uploads/2020/10/Sample_Users.csv",
184
+ 'is_active' => $user_addon_active_status
185
  )
186
  )
187
  );
292
  }
293
  }
294
 
295
+ $checkbox_items = array( 'wt_iew_enable_import_log', 'wt_iew_enable_history_auto_delete', 'wt_iew_include_bom' );
296
  foreach ( $checkbox_items as $checkbox_item ){
297
  $new_advanced_settings[$checkbox_item] = isset( $new_advanced_settings[$checkbox_item] ) ? $new_advanced_settings[$checkbox_item] : 0;
298
  }
462
  $links[] = '<a href="https://www.webtoffee.com/support/" target="_blank">'.__('Support').'</a>';
463
  return $links;
464
  }
465
+
466
+ public function tools_wtexport_text(){
467
+
468
+ echo "<p><b>" . sprintf( __( 'Export WooCommerce products, product categories, product tags and product reviews in CSV format using <a href="%s">this exporter</a>.' ), admin_url( 'admin.php?page=wt_import_export_for_woo_basic_export' ) ) . "</b></p>";
469
+
470
+ if( !is_plugin_active( 'users-customers-import-export-for-wp-woocommerce/users-customers-import-export-for-wp-woocommerce.php' ) ){
471
+ echo "<p><b>" . sprintf(
472
+ /* translators: %s: User Import Export for WooCommerce plugin URL */
473
+ __( 'You can export Users and WooCommerce customers in CSV format using the plugin <a href="%s" target="_blank">Import Export WordPress Users and WooCommerce Customers</a>.' ),
474
+ admin_url('plugin-install.php?tab=plugin-information&plugin=users-customers-import-export-for-wp-woocommerce')
475
+ ) . "</b></p>";
476
+ }else{
477
+ echo "<p><b>" . sprintf( __( 'Export Users and WooCommerce customers in CSV format using <a href="%s">this exporter</a>.' ), admin_url( 'admin.php?page=wt_import_export_for_woo_basic_export' ) ) . "</b></p>";
478
+ }
479
+
480
+ if( !is_plugin_active( 'order-import-export-for-woocommerce/order-import-export-for-woocommerce.php' ) ){
481
+ echo "<p><b>" . sprintf(
482
+ /* translators: %s: Order Import Export for WooCommerce plugin URL */
483
+ __( 'You can export WooCommerce orders and coupons in CSV format using the plugin <a href="%s" target="_blank">Order Export & Order Import for WooCommerce</a>.' ),
484
+ admin_url('plugin-install.php?tab=plugin-information&plugin=order-import-export-for-woocommerce')
485
+ ) . "</b></p>";
486
+ }else{
487
+ echo "<p><b>" . sprintf( __( 'Export WooCommerce orders and coupons in CSV format using <a href="%s">this exporter</a>.' ), admin_url( 'admin.php?page=wt_import_export_for_woo_basic_export' ) ) . "</b></p>";
488
+ }
489
+
490
+ }
491
  }
492
  }
admin/classes/class-csvwriter.php CHANGED
@@ -15,10 +15,12 @@ class Wt_Import_Export_For_Woo_Basic_Csvwriter
15
  public $file_path='';
16
  public $data_ar='';
17
  public $csv_delimiter='';
18
- public function __construct($file_path, $offset, $csv_delimiter=",")
 
19
  {
20
  $this->csv_delimiter=$csv_delimiter;
21
  $this->file_path=$file_path;
 
22
  $this->get_file_pointer($offset);
23
  }
24
 
@@ -55,7 +57,12 @@ class Wt_Import_Export_For_Woo_Basic_Csvwriter
55
  {
56
  if($offset==0)
57
  {
58
- $this->file_pointer=fopen($this->file_path, 'w');
 
 
 
 
 
59
  }else
60
  {
61
  $this->file_pointer=fopen($this->file_path, 'a+');
15
  public $file_path='';
16
  public $data_ar='';
17
  public $csv_delimiter='';
18
+ public $use_bom=true;
19
+ public function __construct($file_path, $offset, $csv_delimiter=",", $use_bom=true)
20
  {
21
  $this->csv_delimiter=$csv_delimiter;
22
  $this->file_path=$file_path;
23
+ $this->use_bom = $use_bom;
24
  $this->get_file_pointer($offset);
25
  }
26
 
57
  {
58
  if($offset==0)
59
  {
60
+ $this->file_pointer=fopen($this->file_path, 'w');
61
+ $this->use_bom = apply_filters('wt_ier_include_bom_in_csv', $this->use_bom);
62
+ if($this->use_bom){
63
+ $BOM = "\xEF\xBB\xBF"; // UTF-8 BOM
64
+ fwrite($this->file_pointer, $BOM); // NEW LINE
65
+ }
66
  }else
67
  {
68
  $this->file_pointer=fopen($this->file_path, 'a+');
admin/css/wt-import-export-for-woo-admin.css CHANGED
@@ -181,6 +181,7 @@
181
 
182
  .wt_iew_warn_box{padding:20px; padding-bottom:0px;}
183
  .wt_iew_warn{ display:inline-block; width:100%; box-sizing:border-box; padding:10px; background-color:#fff8e5; border-left:solid 2px #ffb900; color:#333; }
 
184
  .wt_iew_rerun_warn{ width:95%; margin:30px 2.5%; }
185
 
186
  .wt_iew_info_box{padding:20px; padding-bottom:0px;}
181
 
182
  .wt_iew_warn_box{padding:20px; padding-bottom:0px;}
183
  .wt_iew_warn{ display:inline-block; width:100%; box-sizing:border-box; padding:10px; background-color:#fff8e5; border-left:solid 2px #ffb900; color:#333; }
184
+ .wt_iew_free_addon_warn{ display:inline-block; width:100%; box-sizing:border-box; padding:10px; background-color:#fff8e5; border:solid 1px #ffb900; color:#333; text-align: center; }
185
  .wt_iew_rerun_warn{ width:95%; margin:30px 2.5%; }
186
 
187
  .wt_iew_info_box{padding:20px; padding-bottom:0px;}
admin/modules/export/assets/js/main.js CHANGED
@@ -639,13 +639,26 @@ var wt_iew_basic_export=(function( $ ) {
639
  $('.wt-ierpro-name>img').attr("src", wt_iew_basic_params.pro_plugins[this.to_export]['icon_url']);
640
  $('.wt-ier-gopro-cta').hide();
641
  $('.wt-ier-'+this.to_export).show();
 
 
 
 
 
 
 
642
  },
643
  page_actions:function(step)
644
  {
645
  if(step=='post_type') /* post type page */
646
  {
647
  $('[name="wt_iew_export_post_type"]').unbind('change').change(function(){
648
- wt_iew_basic_export.to_export=$(this).val();
 
 
 
 
 
 
649
  wt_iew_basic_export.to_export_title='';
650
  wt_iew_basic_export.reset_form_data();
651
  $('.wt_iew_post_type_name').html('');
639
  $('.wt-ierpro-name>img').attr("src", wt_iew_basic_params.pro_plugins[this.to_export]['icon_url']);
640
  $('.wt-ier-gopro-cta').hide();
641
  $('.wt-ier-'+this.to_export).show();
642
+
643
+ $('.wt_iew_free_addon').hide();
644
+ $('.wt_iew_export_action_btn').prop('disabled', false);
645
+ if(!wt_iew_basic_params.pro_plugins[this.to_export]['is_active']){
646
+ $('.wt_iew_type_'+this.to_export).show();
647
+ $('.wt_iew_export_action_btn').prop('disabled', true);
648
+ }
649
  },
650
  page_actions:function(step)
651
  {
652
  if(step=='post_type') /* post type page */
653
  {
654
  $('[name="wt_iew_export_post_type"]').unbind('change').change(function(){
655
+
656
+ if (!wt_iew_basic_params.pro_plugins[$(this).val()]['is_active']) {
657
+ $('.wt_iew_export_action_btn').prop('disabled', true);
658
+ $('.wt_iew_type_' + this.to_export).show();
659
+ }
660
+
661
+ wt_iew_basic_export.to_export=$(this).val();
662
  wt_iew_basic_export.to_export_title='';
663
  wt_iew_basic_export.reset_form_data();
664
  $('.wt_iew_post_type_name').html('');
admin/modules/export/export.php CHANGED
@@ -30,6 +30,7 @@ class Wt_Import_Export_For_Woo_Basic_Export
30
  public $default_batch_count=0; /* configure this value in `advanced_setting_fields` method */
31
  public $selected_template_data=array();
32
  public $default_export_method=''; /* configure this value in `advanced_setting_fields` method */
 
33
  public $form_data=array();
34
 
35
  public function __construct()
@@ -105,6 +106,7 @@ class Wt_Import_Export_For_Woo_Basic_Export
105
  {
106
  $this->default_export_method= Wt_Import_Export_For_Woo_Basic_Common_Helper::get_advanced_settings('default_export_method');
107
  $this->default_batch_count=Wt_Import_Export_For_Woo_Basic_Common_Helper::get_advanced_settings('default_export_batch');
 
108
  }
109
 
110
  /**
@@ -123,6 +125,17 @@ class Wt_Import_Export_For_Woo_Basic_Export
123
  'field_group'=>'advanced_field',
124
  'help_text'=>__('Select the default method of export.'),
125
  );
 
 
 
 
 
 
 
 
 
 
 
126
  $fields['default_export_batch']=array(
127
  'label'=>__("Default Export batch count"),
128
  'type'=>'number',
@@ -621,7 +634,7 @@ class Wt_Import_Export_For_Woo_Basic_Export
621
  {
622
 
623
  include_once WT_P_IEW_PLUGIN_PATH.'admin/classes/class-csvwriter.php';
624
- $writer=new Wt_Import_Export_For_Woo_Basic_Csvwriter($file_path, $offset, $csv_delimiter);
625
 
626
 
627
  /**
30
  public $default_batch_count=0; /* configure this value in `advanced_setting_fields` method */
31
  public $selected_template_data=array();
32
  public $default_export_method=''; /* configure this value in `advanced_setting_fields` method */
33
+ public $use_bom = true;
34
  public $form_data=array();
35
 
36
  public function __construct()
106
  {
107
  $this->default_export_method= Wt_Import_Export_For_Woo_Basic_Common_Helper::get_advanced_settings('default_export_method');
108
  $this->default_batch_count=Wt_Import_Export_For_Woo_Basic_Common_Helper::get_advanced_settings('default_export_batch');
109
+ $this->use_bom = (bool)Wt_Import_Export_For_Woo_Basic_Common_Helper::get_advanced_settings('include_bom');
110
  }
111
 
112
  /**
125
  'field_group'=>'advanced_field',
126
  'help_text'=>__('Select the default method of export.'),
127
  );
128
+
129
+ $fields['include_bom'] = array(
130
+ 'label'=>__( "Include BOM in export file" ),
131
+ 'value'=>1,
132
+ 'checkbox_fields' => array( 1 => __( 'Enable' ) ),
133
+ 'type'=>'checkbox',
134
+ 'field_name'=>'include_bom',
135
+ 'field_group'=>'advanced_field',
136
+ 'help_text'=>__( "The BOM will help some programs like Microsoft Excel read your export file if it includes non-English characters." ),
137
+ );
138
+
139
  $fields['default_export_batch']=array(
140
  'label'=>__("Default Export batch count"),
141
  'type'=>'number',
634
  {
635
 
636
  include_once WT_P_IEW_PLUGIN_PATH.'admin/classes/class-csvwriter.php';
637
+ $writer=new Wt_Import_Export_For_Woo_Basic_Csvwriter($file_path, $offset, $csv_delimiter, $this->use_bom);
638
 
639
 
640
  /**
admin/modules/export/views/_export_post_type_page.php CHANGED
@@ -27,4 +27,30 @@ if (!defined('ABSPATH')) {
27
  <td></td>
28
  </tr>
29
  </table>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  </div>
27
  <td></td>
28
  </tr>
29
  </table>
30
+ <br/>
31
+ <?php
32
+ $wt_iew_post_types = array(
33
+ 'order' => array(
34
+ 'message' => __('The <b>Order Export & Order Import for WooCommerce Add-On</b> is required to export WooCommerce Orders.'),
35
+ 'link' => admin_url('plugin-install.php?tab=plugin-information&plugin=order-import-export-for-woocommerce')
36
+ ),
37
+ 'coupon' => array(
38
+ 'message' => __('The <b>Order Export & Order Import for WooCommerce Add-On</b> is required to export WooCommerce Coupons.'),
39
+ 'link' => admin_url('plugin-install.php?tab=plugin-information&plugin=order-import-export-for-woocommerce')
40
+ ),
41
+ 'user' => array(
42
+ 'message' => __('The <b>Import Export WordPress Users and WooCommerce Customers Add-On</b> is required to export users/customers.'),
43
+ 'link' => admin_url('plugin-install.php?tab=plugin-information&plugin=users-customers-import-export-for-wp-woocommerce')
44
+ )
45
+ );
46
+ foreach ($wt_iew_post_types as $wt_iew_post_type => $wt_iew_post_type_detail) { ?>
47
+
48
+ <div class="wt_iew_free_addon wt_iew_free_addon_warn <?php echo 'wt_iew_type_'.$wt_iew_post_type; ?>" style="display:none">
49
+ <p><?php echo $wt_iew_post_type_detail['message']; ?></p>
50
+ <a target="_blank" href="<?php echo $wt_iew_post_type_detail['link']; ?>"><?php _e( 'Install now for free' ); ?></a>
51
+ </div>
52
+
53
+ <?php
54
+ }
55
+ ?>
56
  </div>
admin/modules/import/assets/js/main.js CHANGED
@@ -788,13 +788,26 @@ var wt_iew_basic_import=(function( $ ) {
788
 
789
  $('.wt-ier-gopro-cta').hide();
790
  $('.wt-ier-'+this.to_import).show();
 
 
 
 
 
 
 
791
  },
792
  page_actions:function(step)
793
  {
794
  if(step=='post_type') /* post type page */
795
  {
796
  $('[name="wt_iew_import_post_type"]').unbind('change').change(function(){
797
- wt_iew_basic_import.to_import=$(this).val();
 
 
 
 
 
 
798
  wt_iew_basic_import.to_import_title='';
799
  wt_iew_basic_import.reset_form_data();
800
  $('.wt_iew_post_type_name').html('');
788
 
789
  $('.wt-ier-gopro-cta').hide();
790
  $('.wt-ier-'+this.to_import).show();
791
+
792
+ $('.wt_iew_free_addon').hide();
793
+ $('.wt_iew_import_action_btn').prop('disabled', false);
794
+ if(!wt_iew_basic_params.pro_plugins[this.to_import]['is_active']){
795
+ $('.wt_iew_type_'+this.to_import).show();
796
+ $('.wt_iew_import_action_btn').prop('disabled', true);
797
+ }
798
  },
799
  page_actions:function(step)
800
  {
801
  if(step=='post_type') /* post type page */
802
  {
803
  $('[name="wt_iew_import_post_type"]').unbind('change').change(function(){
804
+
805
+ if (!wt_iew_basic_params.pro_plugins[$(this).val()]['is_active']) {
806
+ $('.wt_iew_import_action_btn').prop('disabled', true);
807
+ $('.wt_iew_type_' + this.to_import).show();
808
+ }
809
+
810
+ wt_iew_basic_import.to_import=$(this).val();
811
  wt_iew_basic_import.to_import_title='';
812
  wt_iew_basic_import.reset_form_data();
813
  $('.wt_iew_post_type_name').html('');
admin/modules/import/views/_import_post_type_page.php CHANGED
@@ -28,4 +28,31 @@ if (!defined('ABSPATH')) {
28
  <td></td>
29
  </tr>
30
  </table>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  </div>
28
  <td></td>
29
  </tr>
30
  </table>
31
+
32
+ <br/>
33
+ <?php
34
+ $wt_iew_post_types = array(
35
+ 'order' => array(
36
+ 'message' => __('The <b>Order Export & Order Import for WooCommerce Add-On</b> is required to export WooCommerce Orders.'),
37
+ 'link' => admin_url('plugin-install.php?tab=plugin-information&plugin=order-import-export-for-woocommerce')
38
+ ),
39
+ 'coupon' => array(
40
+ 'message' => __('The <b>Order Export & Order Import for WooCommerce Add-On</b> is required to export WooCommerce Coupons.'),
41
+ 'link' => admin_url('plugin-install.php?tab=plugin-information&plugin=order-import-export-for-woocommerce')
42
+ ),
43
+ 'user' => array(
44
+ 'message' => __('The <b>Import Export WordPress Users and WooCommerce Customers Add-On</b> is required to export users/customers.'),
45
+ 'link' => admin_url('plugin-install.php?tab=plugin-information&plugin=users-customers-import-export-for-wp-woocommerce')
46
+ )
47
+ );
48
+ foreach ($wt_iew_post_types as $wt_iew_post_type => $wt_iew_post_type_detail) { ?>
49
+
50
+ <div class="wt_iew_free_addon wt_iew_free_addon_warn <?php echo 'wt_iew_type_'.$wt_iew_post_type; ?>" style="display:none">
51
+ <p><?php echo $wt_iew_post_type_detail['message']; ?></p>
52
+ <a target="_blank" href="<?php echo $wt_iew_post_type_detail['link']; ?>"><?php _e( 'Install now for free' ); ?></a>
53
+ </div>
54
+
55
+ <?php
56
+ }
57
+ ?>
58
  </div>
admin/modules/product/product.php CHANGED
@@ -155,7 +155,13 @@ class Wt_Import_Export_For_Woo_Basic_Product {
155
  *
156
  */
157
  public function wt_iew_exporter_post_types_basic($arr) {
158
- $arr['product'] = __('Product');
 
 
 
 
 
 
159
  return $arr;
160
  }
161
 
155
  *
156
  */
157
  public function wt_iew_exporter_post_types_basic($arr) {
158
+ $arr['order'] = __('Order');
159
+ $arr['coupon'] = __('Coupon');
160
+ $arr['product'] = __('Product');
161
+ $arr['product_review'] = __('Product Review');
162
+ $arr['product_categories'] = __('Product Categories');
163
+ $arr['product_tags'] = __('Product Tags');
164
+ $arr['user'] = __('User/Customer');
165
  return $arr;
166
  }
167
 
admin/modules/product_categories/export/export.php CHANGED
@@ -99,7 +99,7 @@ class Wt_Import_Export_For_Woo_Basic_Categories_Export {
99
  continue;
100
  }
101
  if ($column === 'name') {
102
- $row[$column] = $term->name;
103
  continue;
104
  }
105
  if ($column === 'slug') {
99
  continue;
100
  }
101
  if ($column === 'name') {
102
+ $row[$column] = htmlspecialchars_decode($term->name);
103
  continue;
104
  }
105
  if ($column === 'slug') {
admin/modules/product_categories/product_categories.php CHANGED
@@ -171,7 +171,13 @@ class Wt_Import_Export_For_Woo_Basic_Product_Categories {
171
  *
172
  */
173
  public function wt_iew_exporter_post_types($arr) {
174
- $arr['product_categories'] = __('Product Categories');
 
 
 
 
 
 
175
  return $arr;
176
  }
177
 
171
  *
172
  */
173
  public function wt_iew_exporter_post_types($arr) {
174
+ $arr['order'] = __('Order');
175
+ $arr['coupon'] = __('Coupon');
176
+ $arr['product'] = __('Product');
177
+ $arr['product_review'] = __('Product Review');
178
+ $arr['product_categories'] = __('Product Categories');
179
+ $arr['product_tags'] = __('Product Tags');
180
+ $arr['user'] = __('User/Customer');
181
  return $arr;
182
  }
183
 
admin/modules/product_review/product_review.php CHANGED
@@ -171,7 +171,13 @@ class Wt_Import_Export_For_Woo_Basic_Product_Review {
171
  *
172
  */
173
  public function wt_iew_exporter_post_types($arr) {
174
- $arr['product_review'] = __('Product Review');
 
 
 
 
 
 
175
  return $arr;
176
  }
177
 
171
  *
172
  */
173
  public function wt_iew_exporter_post_types($arr) {
174
+ $arr['order'] = __('Order');
175
+ $arr['coupon'] = __('Coupon');
176
+ $arr['product'] = __('Product');
177
+ $arr['product_review'] = __('Product Review');
178
+ $arr['product_categories'] = __('Product Categories');
179
+ $arr['product_tags'] = __('Product Tags');
180
+ $arr['user'] = __('User/Customer');
181
  return $arr;
182
  }
183
 
admin/modules/product_tags/export/export.php CHANGED
@@ -99,7 +99,7 @@ class Wt_Import_Export_For_Woo_Basic_Tags_Export {
99
  continue;
100
  }
101
  if ($column === 'name') {
102
- $row[$column] = $term->name;
103
  continue;
104
  }
105
  if ($column === 'slug') {
99
  continue;
100
  }
101
  if ($column === 'name') {
102
+ $row[$column] = htmlspecialchars_decode($term->name);
103
  continue;
104
  }
105
  if ($column === 'slug') {
admin/modules/product_tags/product_tags.php CHANGED
@@ -171,7 +171,13 @@ class Wt_Import_Export_For_Woo_Basic_Product_Tags {
171
  *
172
  */
173
  public function wt_iew_exporter_post_types($arr) {
174
- $arr['product_tags'] = __('Product Tags');
 
 
 
 
 
 
175
  return $arr;
176
  }
177
 
171
  *
172
  */
173
  public function wt_iew_exporter_post_types($arr) {
174
+ $arr['order'] = __('Order');
175
+ $arr['coupon'] = __('Coupon');
176
+ $arr['product'] = __('Product');
177
+ $arr['product_review'] = __('Product Review');
178
+ $arr['product_categories'] = __('Product Categories');
179
+ $arr['product_tags'] = __('Product Tags');
180
+ $arr['user'] = __('User/Customer');
181
  return $arr;
182
  }
183
 
includes/class-wt-import-export-for-woo.php CHANGED
@@ -80,7 +80,7 @@ class Wt_Import_Export_For_Woo_Basic {
80
  if ( defined( 'WT_P_IEW_VERSION' ) ) {
81
  $this->version = WT_P_IEW_VERSION;
82
  } else {
83
- $this->version = '2.1.8';
84
  }
85
  $this->plugin_name = 'wt-import-export-for-woo-basic';
86
 
@@ -207,6 +207,8 @@ class Wt_Import_Export_For_Woo_Basic {
207
  /* Enqueue CSS and JS */
208
  $this->loader->add_action( 'admin_enqueue_scripts', $this->plugin_admin, 'enqueue_styles' );
209
  $this->loader->add_action( 'admin_enqueue_scripts', $this->plugin_admin, 'enqueue_scripts' );
 
 
210
 
211
  }
212
 
80
  if ( defined( 'WT_P_IEW_VERSION' ) ) {
81
  $this->version = WT_P_IEW_VERSION;
82
  } else {
83
+ $this->version = '2.1.9';
84
  }
85
  $this->plugin_name = 'wt-import-export-for-woo-basic';
86
 
207
  /* Enqueue CSS and JS */
208
  $this->loader->add_action( 'admin_enqueue_scripts', $this->plugin_admin, 'enqueue_styles' );
209
  $this->loader->add_action( 'admin_enqueue_scripts', $this->plugin_admin, 'enqueue_scripts' );
210
+
211
+ $this->loader->add_action( 'export_filters', $this->plugin_admin, 'tools_wtexport_text' );
212
 
213
  }
214
 
product-import-export-for-woo.php CHANGED
@@ -5,8 +5,8 @@
5
  Description: Import and Export Products From and To your WooCommerce Store.
6
  Author: WebToffee
7
  Author URI: https://www.webtoffee.com/product/product-import-export-woocommerce/
8
- Version: 2.1.8
9
- WC tested up to: 6.2
10
  License: GPLv3
11
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
12
  Text Domain: product-import-export-for-woo
@@ -46,7 +46,7 @@ if ( !defined( 'WT_IEW_DEBUG_BASIC_TROUBLESHOOT' ) ) {
46
  * Start at version 1.0.0 and use SemVer - https://semver.org
47
  * Rename this for your plugin and update it as you release new versions.
48
  */
49
- define( 'WT_P_IEW_VERSION', '2.1.8' );
50
 
51
  /**
52
  * The code that runs during plugin activation.
5
  Description: Import and Export Products From and To your WooCommerce Store.
6
  Author: WebToffee
7
  Author URI: https://www.webtoffee.com/product/product-import-export-woocommerce/
8
+ Version: 2.1.9
9
+ WC tested up to: 6.3
10
  License: GPLv3
11
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
12
  Text Domain: product-import-export-for-woo
46
  * Start at version 1.0.0 and use SemVer - https://semver.org
47
  * Rename this for your plugin and update it as you release new versions.
48
  */
49
+ define( 'WT_P_IEW_VERSION', '2.1.9' );
50
 
51
  /**
52
  * The code that runs during plugin activation.
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: product export, product import, CSV import export, woocommerce, CSV, produ
5
  Requires at least: 3.0.1
6
  Tested up to: 5.9
7
  Requires PHP: 5.6
8
- Stable tag: 2.1.8
9
  License: GPLv3 or later
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
11
 
@@ -27,7 +27,7 @@ The free version of the Product Import Export for WooCommerce plugin imports and
27
  * grouped
28
  * external/affiliate products
29
 
30
- With this plugin, you can import and export WooCommerce products to and from a CSV and you can do all the basic import export operations in this 100% free WooCommerce import export plugin.
31
 
32
 
33
  ##MAJOR FEATURES##
@@ -35,10 +35,10 @@ With this plugin, you can import and export WooCommerce products to and from a C
35
  * <strong>Export WooCommerce products into CSV</strong>.
36
  * <strong>Import products from CSV</strong> to WooCommerce.
37
  * Supported product types - <strong>simple, grouped, external/affiliate</strong>.
38
- * Export and import <strong>products with images (gallery and featured images)</strong>.
39
- * Export and import <strong>product reviews</strong> along with ratings.
40
  * Export and import WooCommerce <strong>products based on category/tags/selected products/status/stock</strong>.
41
- * Export and import product <strong>attributes, taxonomies, price, stock, and more</strong>.
42
  * <strong>Bulk edit products-</strong> Edit thousands of product data all at once.
43
  * Import and export <strong>product categories [New]</strong>.
44
  * Import and export <strong>product tags [New]</strong>.
@@ -56,11 +56,11 @@ With this plugin, you can import and export WooCommerce products to and from a C
56
  * <strong>Save frequently used import/export configurations</strong> as templates and use the template for future imports and exports.
57
  * The plugin <strong>stores all the past imports and exports</strong> and <strong>lets you re-run</strong> them when needed.
58
  * <strong>Easy debugging:</strong> View and download import log for debugging purpose.
59
- * Tested OK with WooCommerce 6.1
60
 
61
  ###COMPATIBLE PLUGINS###
62
 
63
- * [Yoast WooCommerce SEO](https://wordpress.org/plugins/wordpress-seo/)
64
  * [All-in-one SEO](https://wordpress.org/plugins/all-in-one-seo-pack/)
65
  * [Cost of Goods](https://woocommerce.com/products/woocommerce-cost-of-goods/)
66
 
@@ -240,6 +240,10 @@ Yes, you can import grouped, affiliate/external products in addition to simple p
240
 
241
  == CHANGELOG ==
242
 
 
 
 
 
243
  = 2.1.8 =
244
  * Enhancement: Category export and import.
245
  * Enhancement: Performance and UI improvements, text corrections.
@@ -589,12 +593,12 @@ Yes, you can import grouped, affiliate/external products in addition to simple p
589
  * Enhancement: Improved label text for Product type, category , tags and shipping class.
590
  * Enhancement: Included links to Documentation and sample CSV.
591
  = 1.0.0 =
592
- * Import /Export WooCommerce Products.
593
 
594
 
595
  == Upgrade Notice ==
596
 
597
- = 2.1.8 =
598
- * Enhancement: Category export and import.
599
- * Enhancement: Performance and UI improvements, text corrections.
600
- * Compatibility: WooCommerce Cost of Goods.
5
  Requires at least: 3.0.1
6
  Tested up to: 5.9
7
  Requires PHP: 5.6
8
+ Stable tag: 2.1.9
9
  License: GPLv3 or later
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
11
 
27
  * grouped
28
  * external/affiliate products
29
 
30
+ With this plugin, you can export and import WooCommerce products to and from a CSV and you can do all the basic import export operations in this 100% free WooCommerce import export plugin.
31
 
32
 
33
  ##MAJOR FEATURES##
35
  * <strong>Export WooCommerce products into CSV</strong>.
36
  * <strong>Import products from CSV</strong> to WooCommerce.
37
  * Supported product types - <strong>simple, grouped, external/affiliate</strong>.
38
+ * Export and import WooCommerce <strong>products with images (featured product image and gallery images)</strong>.
39
+ * Export and import WooCommerce <strong>product reviews</strong> along with ratings.
40
  * Export and import WooCommerce <strong>products based on category/tags/selected products/status/stock</strong>.
41
+ * Export and import WooCommerce products with <strong>attributes, taxonomies, price, stock, and more</strong>.
42
  * <strong>Bulk edit products-</strong> Edit thousands of product data all at once.
43
  * Import and export <strong>product categories [New]</strong>.
44
  * Import and export <strong>product tags [New]</strong>.
56
  * <strong>Save frequently used import/export configurations</strong> as templates and use the template for future imports and exports.
57
  * The plugin <strong>stores all the past imports and exports</strong> and <strong>lets you re-run</strong> them when needed.
58
  * <strong>Easy debugging:</strong> View and download import log for debugging purpose.
59
+ * Tested OK with WooCommerce 6.3
60
 
61
  ###COMPATIBLE PLUGINS###
62
 
63
+ * [Yoast SEO](https://wordpress.org/plugins/wordpress-seo/)
64
  * [All-in-one SEO](https://wordpress.org/plugins/all-in-one-seo-pack/)
65
  * [Cost of Goods](https://woocommerce.com/products/woocommerce-cost-of-goods/)
66
 
240
 
241
  == CHANGELOG ==
242
 
243
+ = 2.1.9 2022-04-11 =
244
+ * WC 6.3 Tested OK.
245
+ * General settings - Option to Include BOM(Byte order mark) in export file to have better special character support.
246
+ * Fix: Category and Tag name contains & is exported to the CSV as "&amp"
247
  = 2.1.8 =
248
  * Enhancement: Category export and import.
249
  * Enhancement: Performance and UI improvements, text corrections.
593
  * Enhancement: Improved label text for Product type, category , tags and shipping class.
594
  * Enhancement: Included links to Documentation and sample CSV.
595
  = 1.0.0 =
596
+ * Export and Import WooCommerce Products.
597
 
598
 
599
  == Upgrade Notice ==
600
 
601
+ = 2.1.9 =
602
+ * WC 6.3 Tested OK.
603
+ * General settings - Option to Include BOM(Byte order mark) in export file to have better special character support.
604
+ * Fix: Category and Tag name contains & is exported to the CSV as "&amp"