WooCommerce Checkout Manager - Version 4.6.6

Version Description

  • Fix: premium compatibility
Download this release

Release Info

Developer quadlayers
Plugin Icon 128x128 WooCommerce Checkout Manager
Version 4.6.6
Comparing to
See all releases

Code changes from version 4.6.5 to 4.6.6

assets/frontend/js/wooccm-checkout.js CHANGED
@@ -473,9 +473,13 @@
473
  var wooccm_enhanced_select = function () {
474
  $('select.wooccm-enhanced-select:visible').each(function () {
475
  var select2_args = $.extend({
476
- placeholder: $(this).attr('data-placeholder') || '',
477
  width: '100%',
478
- forceAbove: true
 
 
 
 
 
479
  }, getEnhancedSelectFormatString());
480
  $(this).on('select2:select', function () {
481
  $(this).focus();
473
  var wooccm_enhanced_select = function () {
474
  $('select.wooccm-enhanced-select:visible').each(function () {
475
  var select2_args = $.extend({
 
476
  width: '100%',
477
+ placeholder: $(this).data('placeholder') || '',
478
+ allowClear: $(this).data('allowclear') || false,
479
+ selectOnClose: $(this).data('selectonclose') || false,
480
+ closeOnSelect: $(this).data('closeonselect') || false,
481
+ //forceAbove: $(this).data('forceabove') || false,
482
+ minimumResultsForSearch: $(this).data('search') || -1,
483
  }, getEnhancedSelectFormatString());
484
  $(this).on('select2:select', function () {
485
  $(this).focus();
includes/model/class-wooccm-field.php CHANGED
@@ -175,6 +175,13 @@ class WOOCCM_Field {
175
  // State
176
  // -------------------------------------------------------------------
177
  'country' => '',
 
 
 
 
 
 
 
178
  // Upload
179
  // -------------------------------------------------------------------
180
  'file_limit' => 1,
175
  // State
176
  // -------------------------------------------------------------------
177
  'country' => '',
178
+ // Select 2
179
+ // -------------------------------------------------------------------
180
+ 'select2' => false,
181
+ 'select2_allowclear' => false,
182
+ 'select2_selectonclose' => false,
183
+ 'select2_closeonselect' => false,
184
+ 'select2_search' => false,
185
  // Upload
186
  // -------------------------------------------------------------------
187
  'file_limit' => 1,
includes/view/backend/pages/modals/modal-field.php CHANGED
@@ -23,6 +23,9 @@
23
  <div class="panel-wrap product_data" style="overflow:visible;">
24
  <?php include_once( 'parts/field-tabs.php' ); ?>
25
  <?php include_once( 'parts/panel-general.php' ); ?>
 
 
 
26
  <# if ( _.contains(<?php echo json_encode($option); ?>, data.type)) { #>
27
  <?php include_once( 'parts/panel-options.php' ); ?>
28
  <# } #>
23
  <div class="panel-wrap product_data" style="overflow:visible;">
24
  <?php include_once( 'parts/field-tabs.php' ); ?>
25
  <?php include_once( 'parts/panel-general.php' ); ?>
26
+ <# if ( _.contains(<?php echo json_encode(array('select', 'multiselect')); ?>, data.type)) { #>
27
+ <?php include_once( 'parts/panel-select2.php' ); ?>
28
+ <# } #>
29
  <# if ( _.contains(<?php echo json_encode($option); ?>, data.type)) { #>
30
  <?php include_once( 'parts/panel-options.php' ); ?>
31
  <# } #>
includes/view/backend/pages/modals/parts/field-tabs.php CHANGED
@@ -2,6 +2,11 @@
2
  <li class="general_options active">
3
  <a href="#tab_panel_general"><span><?php esc_html_e('General', 'woocommerce-checkout-manager'); ?></span></a>
4
  </li>
 
 
 
 
 
5
  <# if ( _.contains(<?php echo json_encode($option); ?>, data.type)) { #>
6
  <li class="options_options active">
7
  <a href="#tab_panel_options"><span><?php esc_html_e('Options', 'woocommerce-checkout-manager'); ?></span></a>
@@ -28,7 +33,7 @@
28
  <li class="admin_options">
29
  <a href="#tab_panel_admin"><span><?php esc_html_e('Admin', 'woocommerce-checkout-manager'); ?></span></a>
30
  </li>
31
- <!-- <li class="suggestions_options">
32
- <a href="#tab_panel_suggestions"><span><?php esc_html_e('Suggestions', 'woocommerce-checkout-manager'); ?></span></a>
33
- </li>-->
34
  </ul>
2
  <li class="general_options active">
3
  <a href="#tab_panel_general"><span><?php esc_html_e('General', 'woocommerce-checkout-manager'); ?></span></a>
4
  </li>
5
+ <# if ( _.contains(<?php echo json_encode(array('select', 'multiselect')); ?>, data.type)) { #>
6
+ <li class="price_options">
7
+ <a href="#tab_panel_select2"><span><?php esc_html_e('Select2', 'woocommerce-checkout-manager'); ?></span></a>
8
+ </li>
9
+ <# } #>
10
  <# if ( _.contains(<?php echo json_encode($option); ?>, data.type)) { #>
11
  <li class="options_options active">
12
  <a href="#tab_panel_options"><span><?php esc_html_e('Options', 'woocommerce-checkout-manager'); ?></span></a>
33
  <li class="admin_options">
34
  <a href="#tab_panel_admin"><span><?php esc_html_e('Admin', 'woocommerce-checkout-manager'); ?></span></a>
35
  </li>
36
+ <!-- <li class="suggestions_options">
37
+ <a href="#tab_panel_suggestions"><span><?php esc_html_e('Suggestions', 'woocommerce-checkout-manager'); ?></span></a>
38
+ </li>-->
39
  </ul>
includes/view/backend/pages/modals/parts/panel-select2.php ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div id="tab_panel_select2" class="panel woocommerce_options_panel hidden" style="display: none;">
2
+ <div class="options_group wooccm-premium">
3
+ <p class="form-field">
4
+ <label><?php esc_html_e('Select2', 'woocommerce-checkout-manager'); ?></label>
5
+ <input <# if ( data.select2 ) { #>checked="checked"<# } #> type="checkbox" name="select2" value="1">
6
+ <span class="description hidden"><?php esc_html_e('Enhance select behaviour with select2.', 'woocommerce-checkout-manager'); ?></span>
7
+ <span class="description premium">(<?php esc_html_e('This is a premium feature', 'woocommerce-checkout-manager'); ?>)</span>
8
+ </p>
9
+ </div>
10
+ <div class="options_group wooccm-premium">
11
+ <p class="form-field">
12
+ <label><?php esc_html_e('Allow clear', 'woocommerce-checkout-manager'); ?></label>
13
+ <input <# if ( data.select2_allowclear ) { #>checked="checked"<# } #> type="checkbox" name="select2_allowclear" value="1">
14
+ <span class="description hidden"><?php esc_html_e('Provides support for clearable selections.', 'woocommerce-checkout-manager'); ?></span>
15
+ <span class="description premium">(<?php esc_html_e('This is a premium feature', 'woocommerce-checkout-manager'); ?>)</span>
16
+ </p>
17
+ <p class="form-field">
18
+ <label><?php esc_html_e('Allow search', 'woocommerce-checkout-manager'); ?></label>
19
+ <input <# if ( data.select2_search ) { #>checked="checked"<# } #> type="checkbox" name="select2_search" value="1">
20
+ <span class="description hidden"><?php esc_html_e('Display the search box for options.', 'woocommerce-checkout-manager'); ?></span>
21
+ <span class="description premium">(<?php esc_html_e('This is a premium feature', 'woocommerce-checkout-manager'); ?>)</span>
22
+ </p>
23
+ </div>
24
+ <div class="options_group wooccm-premium">
25
+ <p class="form-field">
26
+ <label><?php esc_html_e('Select on close', 'woocommerce-checkout-manager'); ?></label>
27
+ <input <# if ( data.select2_selectonclose ) { #>checked="checked"<# } #> type="checkbox" name="select2_selectonclose" value="1">
28
+ <span class="description hidden"><?php esc_html_e('Implements automatic selection when the dropdown is closed.', 'woocommerce-checkout-manager'); ?></span>
29
+ <span class="description premium">(<?php esc_html_e('This is a premium feature', 'woocommerce-checkout-manager'); ?>)</span>
30
+ </p>
31
+ <p class="form-field">
32
+ <label><?php esc_html_e('Close on select', 'woocommerce-checkout-manager'); ?></label>
33
+ <input <# if ( data.select2_closeonselect ) { #>checked="checked"<# } #> type="checkbox" name="select2_closeonselect" value="1">
34
+ <span class="description hidden"><?php esc_html_e('Controls whether the dropdown is closed after a selection is made.', 'woocommerce-checkout-manager'); ?></span>
35
+ <span class="description premium">(<?php esc_html_e('This is a premium feature', 'woocommerce-checkout-manager'); ?>)</span>
36
+ </p>
37
+ </div>
38
+ </div>
includes/view/frontend/class-wooccm-fields-filters.php CHANGED
@@ -116,7 +116,7 @@ class WOOCCM_Fields_Filter {
116
  $value = is_array($value) ? $value : array($value);
117
 
118
  if (!empty($args['options'])) {
119
- $field .= '<select name="' . esc_attr($key) . '[]" id="' . esc_attr($key) . '" class="select" multiple="multiple" ' . implode(' ', $custom_attributes) . '>';
120
  foreach ($args['options'] as $option_key => $option_text) {
121
  $field .= '<option value="' . esc_attr($option_key) . '" ' . selected(in_array($option_key, $value), 1, false) . '>' . esc_attr($option_text) . '</option>';
122
  }
116
  $value = is_array($value) ? $value : array($value);
117
 
118
  if (!empty($args['options'])) {
119
+ $field .= '<select name="' . esc_attr($key) . '[]" id="' . esc_attr($key) . '" class="select ' . esc_attr(implode(' ', $args['input_class'])) . '" multiple="multiple" ' . implode(' ', $custom_attributes) . '>';
120
  foreach ($args['options'] as $option_key => $option_text) {
121
  $field .= '<option value="' . esc_attr($option_key) . '" ' . selected(in_array($option_key, $value), 1, false) . '>' . esc_attr($option_text) . '</option>';
122
  }
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://quadlayers.com/
4
  Tags: woocommerce, woocommerce checkout, field manager, checkout editor, checkout field, shipping field, billing field, order field, additional field
5
  Requires at least: 3.0
6
  Tested up to: 5.2.4
7
- Stable tag: 4.6.5
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -12,106 +12,68 @@ Manages WooCommerce Checkout, the advanced way.
12
 
13
  == Description ==
14
 
15
- [Documentation](https://quadlayers.com/documentation/woocommerce-checkout-manager/) | [Support](https://quadlayers.com/account/support/) | [Community](https://www.facebook.com/groups/quadlayers/)
16
-
17
 
18
  WooCommerce Checkout Manager allows you to customize and manage the fields on your WooCommerce Checkout page. Re-order, rename, hide and extend Checkout fields within the Billing, Shipping and Additional sections.
19
 
20
- = Ownership =
21
 
22
- 30/08/2019 marks a change of ownership of WooCommerce Checkout Manager from Visser to [QuadLayers](https://quadlayers.com/) who will be responsible for resolving critical Plugin issues and ensuring the Plugin meets WordPress security and coding standards in the form of regular Plugin updates.
23
 
 
 
24
 
25
- = FEATURES =
 
26
 
27
- * Add new fields to the checkout page and re-order them.
28
- * Make checkout fields optional.
29
- * Remove & Make required fields.
30
- * Added fields will appear on Order Summary, Receipt and Back-end in Orders.
31
- * Enable/ Disable "Additional Fields" section name on the Order Summary and Receipt.
32
- * Fields types: Text, Textarea, Password, Radio, Checkbox, Select, Country, State, Color Picker, Multiselect, Multicheckbox, File Upload, Heading.
33
- * Compatible with [WPML](http://wpml.org/), [WooCommerce Print Invoice & Delivery Note](http://wordpress.org/plugins/woocommerce-delivery-notes/), [ Store Exporter Deluxe](http://www.visser.com.au/plugins/store-exporter-deluxe//), [ WooCommerce Order/Customer CSV Export](http://www.woothemes.com/products/ordercustomer-csv-export/).
34
- * Show or Hide fields for different User Roles.
35
- * Upload files on Checkout Page.
36
- * Sort Orders by Field Name.
37
- * Export Orders by Field Name.
38
- * Add new fields to the **Billing** and **Shipping** sections **separately** from Additional fields.
39
- * These fields can be edited on your customers **account** page.
40
- * Create Conditional Fields.
41
- * Create fields to remove tax.
42
- * Create fields to add additional amount.
43
- * Replace Text using Text/ Html Swapper.
44
- * Allow Customers to **Upload files** for each order on order details page.
45
- * Show or Hide added field for Specific Product or Category Only.
46
- * Display **Payment Method** and Shipping Method used by customer.
47
- * Disable any added field from Checkout details page and Order Receipt.
48
- * **Retain fields information** for customers when they navigate back and forth from checkout.
49
- * Disable Billing Address fields for chosen shipping goods. Which makes them visible only for virtual goods.
50
- * Area to insert your own **Custom CSS**.
51
- * Display **Order Time**.
52
- * Set Default State for checkout.
53
- * Re-position the added fields: Before Shipping Form, After Shipping Form, Before Billing Form, After Billing Form or After Order Notes
54
- * **Insert Notice:** Before Customer Address Fields and Before Order Summary on checkout page.
55
 
56
- == Installation ==
 
57
 
58
- = Minimum Requirements =
59
 
60
- * WooCommerce 2.2 +
61
- * WordPress 3.8 or greater
62
- * PHP 5.2.4 or greater
63
- * MySQL 5.0 or greater
64
 
65
- = Automatic Plugin installation =
66
 
67
- 1. Login to your WordPress Administration
68
- 2. Navigate to the Plugins screen and click Add New
69
- 3. Within the Search Plugins text field enter 'WooCommerce Checkout Manager' and press Enter
70
- 4. Click the Install Now button
71
 
72
- = Manual Plugin installation =
73
 
74
- The manual installation method involves downloading the Plugin and uploading it to your web server via an FTP application. The [WordPress Codex](https://codex.wordpress.org/Managing_Plugins#Manual_Plugin_Installation) contains instructions on how to do this.
75
 
76
- = Updating =
77
 
78
- Automatic updates are delivered just like any other WordPress Plugin.
 
79
 
80
  == Frequently Asked Questions ==
81
 
82
- = How do I add conditional Checkout fields? =
83
 
84
- Read through the [Adding Conditional Checkout fields](https://quadlayers.com/documentation/woocommerce-checkout-manager/configuration/) walkthrough on our website.
85
 
86
- = [Insert feature] is not working within WooCommerce Checkout Manager =
87
 
88
- First de-activate and re-activate the WooCommerce Checkout Manager from the Plugins screen within the WordPress Administration. This triggers the Plugin installation script to be run and often resolves issues when updating from a legacy release of WooCommerce Checkout Manager (e.g. <4.0).
89
 
90
- If your issue persists visit the [WooCommerce Checkout Manager > Support section](https://wordpress.org/support/plugin/woocommerce-checkout-manager). This is the place to comment on existing topics and raise new support topics.
91
 
92
- = Why can't I do [insert feature] within WooCommerce Checkout Manager? =
93
 
94
- Visit the [WooCommerce Checkout Manager > Ideas/Feature requests Trello board](https://trello.com/b/XSpf40lq) or open a new topic on the [WooCommerce Checkout Manager > Support section](https://wordpress.org/support/plugin/woocommerce-checkout-manager).
95
 
96
- = How to fix fields that are not showing on checkout page properly? =
97
 
98
- Usually this is an CSS issue. If your theme comes with the option to input your very own custom CSS, you can use the abbreviation field name as part of the CSS code to set the fields in the way that you want.
99
 
100
- Example :
101
- `#myfield1_field {
102
- float: right;
103
- }`
104
 
105
  = How do I review the Order data from the custom fields? =
106
 
107
- Your Order data can be reviewed in each Order within the default WooCommerce Order Data box of the WooCommerce > Edit Order screen within the WordPress Administration. Custom fields are separated by Billing, Shipping and Additional sections.
108
-
109
- = How do you access saved data to be used with WooCommerce PDF Invoices & Packing Slips? =
110
-
111
- The above plugin requests that you code the fields in the template. To access the saved data, use the abbreviation name of the field. As we are using the first abbreviation field as an example. Where "myfield1" is the abbreviation name, and "My custom field:" is the label.
112
-
113
- Example:
114
- `<?php $wpo_wcpdf->custom_field('myfield1', 'My custom field:'); ?>`
115
 
116
  == Screenshots ==
117
 
@@ -137,6 +99,9 @@ Example:
137
 
138
  == Changelog ==
139
 
 
 
 
140
  = 4.6.5 =
141
  * Fix: premium compatibility
142
  * Fix: duplicated names after reorder
4
  Tags: woocommerce, woocommerce checkout, field manager, checkout editor, checkout field, shipping field, billing field, order field, additional field
5
  Requires at least: 3.0
6
  Tested up to: 5.2.4
7
+ Stable tag: 4.6.6
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
12
 
13
  == Description ==
14
 
15
+ [Premium](https://quadlayers.com/portfolio/woocommerce-checkout-manager/) | [Demo](https://quadlayers.com/woocommerce-checkout-manager/checkout/?add-to-cart=32) | [Documentation](https://quadlayers.com/documentation/woocommerce-checkout-manager/) | [Community](https://www.facebook.com/groups/quadlayers/)
 
16
 
17
  WooCommerce Checkout Manager allows you to customize and manage the fields on your WooCommerce Checkout page. Re-order, rename, hide and extend Checkout fields within the Billing, Shipping and Additional sections.
18
 
19
+ == WooCommerce Checkout ==
20
 
21
+ WooCommerce Checkout Manager allow you to customize the checkout process and checkout fields.
22
 
23
+ = Force shipping address =
24
+ This option allows you to remove the toggle checkbox to display the shipping fields. Shipping fields will be always displayed and the user will be forced to complete them.
25
 
26
+ = Force create an account =
27
+ This option allows you to remove the option to create an account during the purchase process. The account will be always created with the email defined by the user in the billing fields.
28
 
29
+ = Remove order notes =
30
+ This option allows you to remove the order notes in the checkout form.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
 
32
+ = Add message before checkout =
33
+ This option allows you to include a custom message before or after the checkout form.
34
 
35
+ == WooCommerce Checkout Fields ==
36
 
37
+ WooCommerce Checkout Manager allows you to include custom fields to the checkout page in Billing, Shipping and Additional fields sections.
 
 
 
38
 
39
+ Our plugin allow you reorder, remove or change the field type of the WooCommerce core fields. You can choose between this field types: Text, Textarea, Password, Radio, Checkbox, Select, Country, State, Multiselect, Multicheckbox, Heading, Colorpicker, File uploader.
40
 
41
+ == WooCommerce Checkout Conditional Fields ==
 
 
 
42
 
43
+ WooCommerce Checkout Manager supports conditional checkout fields allowing you to show/hide the fields based on the value of its parent fields.
44
 
45
+ Our system detects the parent field type and allows you to select the value based on the available options.
46
 
47
+ == WooCommerce Checkout Upload Files ==
48
 
49
+ You can include an unlimited number of File type fields and then offer the user an option to display the uploaded files in their order. The user will be allowed to upload or delete fields through the order page.
50
+ page.
51
 
52
  == Frequently Asked Questions ==
53
 
54
+ = How to add checkout fields? =
55
 
56
+ [Adding fields to checkout page](https://quadlayers.com/documentation/woocommerce-checkout-manager/fields/)
57
 
58
+ = How to remove core checkout fields? =
59
 
60
+ [Removing checkout core fields](https://quadlayers.com/documentation/woocommerce-checkout-manager/fields/)
61
 
62
+ = How to change default fields order? =
63
 
64
+ [Reorder checkout fields](https://quadlayers.com/documentation/woocommerce-checkout-manager/fields/)
65
 
66
+ = How to change additional fields position? =
67
 
68
+ [Change additional fields position](https://quadlayers.com/documentation/woocommerce-checkout-manager/fields/)
69
 
70
+ = How do I add conditional checkout fields? =
71
 
72
+ [Adding conditional checkout fields](https://quadlayers.com/documentation/woocommerce-checkout-manager/conditional/)
 
 
 
73
 
74
  = How do I review the Order data from the custom fields? =
75
 
76
+ Your Order data can be reviewed in each order within the default WooCommerce Order Data box of the WooCommerce > Edit Order screen within the WordPress Administration. Custom fields are separated by Billing, Shipping and Additional sections.
 
 
 
 
 
 
 
77
 
78
  == Screenshots ==
79
 
99
 
100
  == Changelog ==
101
 
102
+ = 4.6.6 =
103
+ * Fix: premium compatibility
104
+
105
  = 4.6.5 =
106
  * Fix: premium compatibility
107
  * Fix: duplicated names after reorder
woocommerce-checkout-manager.php CHANGED
@@ -3,7 +3,7 @@
3
  /**
4
  * Plugin Name: WooCommerce Checkout Manager
5
  * Description: Manages WooCommerce Checkout, the advanced way.
6
- * Version: 4.6.5
7
  * Author: QuadLayers
8
  * Author URI: https://www.quadlayers.com
9
  * Copyright: 2019 QuadLayers (https://www.quadlayers.com)
@@ -17,7 +17,7 @@ if (!defined('WOOCCM_PLUGIN_NAME')) {
17
  define('WOOCCM_PLUGIN_NAME', 'WooCommerce Checkout Manager');
18
  }
19
  if (!defined('WOOCCM_PLUGIN_VERSION')) {
20
- define('WOOCCM_PLUGIN_VERSION', '4.6.5');
21
  }
22
  if (!defined('WOOCCM_PLUGIN_FILE')) {
23
  define('WOOCCM_PLUGIN_FILE', __FILE__);
3
  /**
4
  * Plugin Name: WooCommerce Checkout Manager
5
  * Description: Manages WooCommerce Checkout, the advanced way.
6
+ * Version: 4.6.6
7
  * Author: QuadLayers
8
  * Author URI: https://www.quadlayers.com
9
  * Copyright: 2019 QuadLayers (https://www.quadlayers.com)
17
  define('WOOCCM_PLUGIN_NAME', 'WooCommerce Checkout Manager');
18
  }
19
  if (!defined('WOOCCM_PLUGIN_VERSION')) {
20
+ define('WOOCCM_PLUGIN_VERSION', '4.6.6');
21
  }
22
  if (!defined('WOOCCM_PLUGIN_FILE')) {
23
  define('WOOCCM_PLUGIN_FILE', __FILE__);