Code

Discussion on WooCommerce Multiple Customer Addresses & Shipping

Discussion on WooCommerce Multiple Customer Addresses & Shipping

Cart 2,337 sales

vanquish supports this item

Supported

987 comments found.

polylang integration??

and loco translate plguin can ?

The plugin can be translated by using the .pot language file or WPML

Hi, I created a page from scratch, using the wordpress editor and inserted the shortcode [woocommerce_checkout] and associated it correctly in the wordpress panel as the default checkout page, but the problem still occurs. Even though we have set the guest user to have the billing address as their shipping address, it still isn’t recognized and gives me the error Customer match to the “Locations not covered by your other zones”, could you please take a look?

Hi,
those are just warning that do not prevent the checkout to be performed.

The array that seems to be not accessible is this:
$address_fields_names = array('first_name' => "",'last_name' => "", 'email' => "", 'company' => "", 'country' => "", 'state' => "",'city' => "",'postcode' => "", 'address_1' => "",'address_2' => "", 'phone' => "");

If it was not altered, the error you reported sounds very strange. The plugin triggers the wcmca_get_field_names filter that allows 3rd party to modify it.

By any chance did you modify it by hooking to that filter?

I didn’t touch anything, I followed the plugin instructions, and even installed it a second time, even if I leave only woocommerce and the plugin active, with a basic theme the problem persists. In query monitor i had multiple php warning one of this says:

Warning Undefined array key “country” wp-content/plugins/woocommerce-multiple-customer-addresses/classes/com/WCMCA_Cart.php:289 WPForms\ErrorHandler->fallback_error_handler() wp-content/plugins/wpforms-lite/src/ErrorHandler.php:269 WPForms\ErrorHandler->error_handler() wp-content/plugins/wpforms-lite/src/ErrorHandler.php:269 WPForms\ErrorHandler->fallback_error_handler() wp-content/plugins/wpforms-lite/src/ErrorHandler.php:269 WPForms\ErrorHandler->error_handler() wp-content/plugins/woocommerce-multiple-customer-addresses/classes/com/WCMCA_Cart.php:289 WCMCA_Cart->generate_packages() wp-includes/class-wp-hook.php:324 apply_filters(‘woocommerce_cart_shipping_packages’) wp-content/plugins/woocommerce/includes/class-wc-cart.php:1525 WC_Cart->get_shipping_packages() wp-content/plugins/woocommerce-payments/includes/express-checkout/class-wc-payments-express-checkout-button-helper.php:536 WC_Payments_Express_Checkout_Button_Helper->has_allowed_items_in_cart() wp-content/plugins/woocommerce-payments/includes/express-checkout/class-wc-payments-express-checkout-button-helper.php:408 WC_Payments_Express_Checkout_Button_Helper->should_show_express_checkout_button() wp-content/plugins/woocommerce-payments/includes/express-checkout/class-wc-payments-express-checkout-button-handler.php:221 WC_Payments_Express_Checkout_Button_Handler->scripts() wp-includes/class-wp-hook.php:324 do_action(‘wp_enqueue_scripts’) wp-includes/script-loader.php:2272 wp_enqueue_scripts() wp-includes/class-wp-hook.php:324 do_action(‘wp_head’) wp-includes/general-template.php:3064 wp_head() wp-content/themes/hello-elementor/header.php:23 load_template(‘wp-content/themes/hello-elementor/header.php’) wp-includes/template.php:745 locate_template() wp-includes/general-template.php:48 get_header() wp-content/themes/hello-elementor/index.php:14 If I switch theme is the same if I deactivate elementor is the same : apply_filters(‘woocommerce_cart_shipping_packages’) wp-content/plugins/woocommerce/includes/class-wc-cart.php:1525 WC_Cart->get_shipping_packages() wp-content/plugins/woocommerce/includes/class-wc-cart.php:1431 WC_Cart->calculate_shipping() wp-content/plugins/woocommerce/includes/class-wc-cart-totals.php:346 WC_Cart_Totals->get_shipping_from_cart() wp-content/plugins/woocommerce/includes/class-wc-cart-totals.php:857 WC_Cart_Totals->calculate_shipping_totals() wp-content/plugins/woocommerce/includes/class-wc-cart-totals.php:151 WC_Cart_Totals->calculate() wp-content/plugins/woocommerce/includes/class-wc-cart-totals.php:141 WC_Cart_Totals->__construct() wp-content/plugins/woocommerce/includes/class-wc-cart.php:1409 WC_Cart->calculate_totals() wp-content/plugins/woocommerce/includes/shortcodes/class-wc-shortcode-checkout.php:355 WC_Shortcode_Checkout::checkout() wp-content/plugins/woocommerce/includes/shortcodes/class-wc-shortcode-checkout.php:70 WC_Shortcode_Checkout::output() wp-content/plugins/woocommerce/includes/class-wc-shortcodes.php:72 WC_Shortcodes::shortcode_wrapper() wp-content/plugins/woocommerce/includes/class-wc-shortcodes.php:95 WC_Shortcodes::checkout() wp-includes/shortcodes.php:434 do_shortcode_tag() wp-includes/shortcodes.php:434 preg_replace_callback() wp-includes/shortcodes.php:273 do_shortcode() wp-includes/class-wp-hook.php:324 apply_filters(‘the_content’) wp-includes/blocks/post-content.php:50 render_block_core_post_content() wp-includes/class-wp-block.php:537 WP_Block->render() wp-includes/class-wp-block.php:517 WP_Block->render() wp-includes/class-wp-block.php:517 WP_Block->render() wp-includes/blocks.php:2191 render_block() wp-includes/blocks.php:2243 do_blocks() wp-includes/block-template.php:263 get_the_block_template_html() wp-includes/template-canvas.php:12

Ok, not a problem.

Please update to the latest 25.3 version, it should address that issue. Give it a try and let me know!

Hi,

I bought your plugin, but it’s not working correctly. I tried different settings in both the WooCommerce shipping tab and the plugin panel, but the issue remains.

The problem is that the shipping area is not detected automatically. It should default to the billing area, but it doesn’t. The only way to make it work is by manually adding a new shipping area using the “Add new shipping” button.

I also tried using the default WooCommerce shortcode and Elementor sections, but the issue is still there.

Could you please check and help me fix this?

Hi,
please take a look at the Custom checkout form notice paragraph you find on the plugin description page. The plugin requires the usage of the default template. If you are using a WooCommerce block or a custom checkout, restore the original.

i have created multiple fields through checkout page editor , will this pligun support these fields or i need to add code for these fields?

Fields are retrieved by invoking the native WC()>countries>get_address_fields() method.

If a plugin is inserting custom fields using the woocommerce_billing_fields/woocommerce_shipping_fields filters should work, but they need to be a simple type (like text or select field). If they are implementing custom types like radio or conditional fields, most likely they won’t work. The address popup is not designed to manage those special fields.

To be sure the plugin will work, I warmly recommend using it without the usage of any custom field.

can i bought and try it if its work or i can refund it , more likely it will work or i will custom code if needed, will your support help i need help ?

No, the refund policy doesn’t include refunds for this kind of scenario.

The support service doesn’t include any customization service and doesn’t cover issues related to custom code. If you need customization after the purchase, I can evaluate the task and eventually give you a quotation.

Hello, does the plugin work with the new FSE in WooCommerce v9.6? Does the plugin have blocks or any shortcodes?

Best Regards ;)

Hello,
no, the plugin hasn’t any support with blocks. It automatically renders its controllers (the address selector) in the Checkout template. The checkout block doesn’t implement any method for 3rd party to inject their data, so if you plan to use the plugin, you need to switch to the default checkout template.

Before buying this plugin, i have one question as per my requirement,

I want to add Shipping address after fetching from some API, so my complete requirement is as below.

- I will fetch Shipping Address from some API, which I will handle my self. - I want to add those shipping addresses to this plugin through code,

how can I achieve this adding shipping addresses through code

Hi,
The plugin has the following method that allows you to add an address:
global $wcmca_customer_model;
$wcmca_customer_model->add_address($user_id, $address);
where the $address in an array containing the new address data:
array(15) {
  ["type"]=>
  string(7) "billing" 
  ["address_id"]=>
  string(2) "13" 
  ["address_internal_name"]=>
  string(2) "test" 
  ["user_id"]=>
  string(1) "1" 
  ["billing_first_name"]=>
  string(4) "Dead" 
  ["billing_last_name"]=>
  string(4) "Shot" 
  ["billing_company"]=>
  string(0) "" 
  ["billing_email"]=>
  string(19) "dadshot@noemail.com" 
  ["billing_phone"]=>
  string(9) "123231231" 
  ["billing_country"]=>
  string(2) "IT" 
  ["billing_state"]=>
  string(2) "BA" 
  ["billing_address_1"]=>
  string(2) "st" 
  ["billing_address_2"]=>
  string(0) "" 
  ["billing_city"]=>
  string(6) "Gotham" 
  ["billing_postcode"]=>
  string(6) "123123" 
  ["billing_vat_number"]=>
  string(0) "" 
}

You can use the that snippet to insert the data you read from the API

Hello, I want to show the Billing & shipping details to YITH Woocommerce Quote Request page. How can i do it ?

Hello,
I’m sorry, but you should ask that plugin help staff on how to show that data in their plugin.

Good Morning Developer,

We are currently making use of this plugin in our woocommerce store and enabled the ‘send a copy to shipping address email’ when an order status has been updated , but it only seems to stil send an email only to the billing address email ?

Please assist ?

Kind Regards,

Hello,
I’m sorry, to which send a copy to the shipping address email option are you referring? The plugin doesn’t have such an option.

Hi. Is it possible to import delivery addresses directly to the database (not with your importing tool)?

We need automatically update them from another system. Already tried and i see them imported from backend, but not in dropdown box, when i want to make an order as user.

Thanks

Hi,
yes you could. The addresses are stored in a single usermeta key named _wcmca_additional_addresses for each user. The array has the following structure:
array(2) {
  [0]=>
  array(15) {
    ["type"]=>
    string(7) "billing" 
    ["address_id"]=>
    string(2) "11" 
    ["user_id"]=>
    string(1) "1" 
    ["address_internal_name"]=>
    string(15) "Home" 
    ["billing_first_name"]=>
    string(9) "Valentino" 
    ["billing_last_name"]=>
    string(5) "Rossi" 
    ["billing_company"]=>
    string(6) "Amazon" 
    ["billing_country"]=>
    string(2) "IT" 
    ["billing_state"]=>
    string(2) "PU" 
    ["billing_address_1"]=>
    string(3) "Via" 
    ["billing_address_2"]=>
    string(0) "" 
    ["billing_city"]=>
    string(6) "Pesaro" 
    ["billing_postcode"]=>
    string(6) "123456" 
    ["billing_phone"]=>
    string(5) "55555" 
    ["billing_email"]=>
    string(17) "example@gmail.com" 
  }
  [1]=>
  array(12) {
    ["type"]=>
    string(8) "shipping" 
    ["address_id"]=>
    string(2) "12" 
    ["address_internal_name"]=>
    string(14) "Office" 
    ["shipping_first_name"]=>
    string(4) "John" 
    ["shipping_last_name"]=>
    string(6) "Doe" 
    ["shipping_company"]=>
    string(0) "" 
    ["shipping_country"]=>
    string(2) "AL" 
    ["shipping_state"]=>
    string(9) "stato_bho" 
    ["shipping_address_1"]=>
    string(3) "via" 
    ["shipping_address_2"]=>
    string(0) "" 
    ["shipping_city"]=>
    string(6) "Tirana" 
    ["shipping_postcode"]=>
    string(6) "123456" 
  }
}
In this example, the customer has two addresses.

Please advise if this is compatible with Elementor Pro. I have a customized checkout page using E Pro and a sticky header.

Thank you.

I’m sorry, the plugin doesn’t support customized checkout pages.

Hello!

I need soe help! I bought your plugin Multiple Customer Addresses to offer the option to store and use several delivery addresses. I am using the newest wordpress and woocommerce with the them storefront. It seems that you plugin is not compatible. Please help me to make it run the way it should.The domain is www.fenix-profil.de .

Thank you and till soon

Andreas

Hello,
what do you mean that is not compatible? Could you provide a more detailed description of the issue?

Please, ensure you are not using WooCommerce block, but the standard WooCommerce checkout template. As reported int he Custom checkout form notice paragraph, altering the checkout page in any way, might lead the plugin to not work as expected.

Can this plugin allow for custom code? We were looking to add an additional text field such as “Account Number” in the Address Book.

We were going to test on the demo site but we need access to the server in order to alter the functions file.

The plugin doesn’t have any feature to allow the creation of new fields.

You can however create that field by just hooking to the woocommerce_billing_fields filter:
add_filter( 'woocommerce_billing_fields', 'your_function', 10 );
function your_function( $fields ) 
{
$fields['billing_account_number']  = array(
    'account_username'   => array(
        'type'        => 'text',
        'label'       => __( 'Account Number', 'woocommerce' ),
        'placeholder' => _x( 'Account Number', 'woocommerce' ),
    )
return $fields;
}

and it will appear in the address book.

Why is the plugin throwing this headers sent error? My log file is FULL of this error.

PHP Warning: session_start(): Session cannot be started after headers have already been sent in /home/websitename/public_html/wp-content/plugins/woocommerce-multiple-customer-addresses/classes/com/WCMCA_Session.php on line 11

Hi,
that’s a warning, not an error. It seems that something in your installation is outputting text before in the headers and send to the clients before the plugin can init its self.

Try disabling the other plugins one by one (and eventually the theme as well) until you find the interfering one. Once done, you need to report to its developer.

Hi!

Does your Plugin support different languages like German?

Hi,
the plugin supports the WPML plugins for localization and the po/mo system to translate static strings. You need, however, to translate those strings in the language you need by yourself.

Hello, you don’t close sessions and this is causing issues on the site: session_start() should be closed with session_write_close() as well.

Hello,
should no must be closed. It could be closed if the plugin was sure that no other component was using the session to store their data. Closing without knowing that, could cause other components to not work as expected. The plugin just creates a user session if it is not existing, this doesn’t cause any kind of issue.

Not sure I follow, why do you need to keep that one session open, why can’t another be opened if needed? As I understand open sessions like these can cause load issues. Wordpress lists it as critical issue: “A PHP session was created by a session_start() function call. This interferes with REST API and loopback requests. The session should be closed by session_write_close() before making any HTTP requests.”

Because the plugin needs it to properly work and open if it is not already opened. In the case of REST API, the plugin doesn’t even init (check line 33 on the main woocommerce-multiple-customer-addresses.php script file)

I have contacted you before I am getting purchase code invalid

Please do not open different threads regarding the same matter. It won’t make you acquire more priority, it just makes it harder to keep track of your ticket.

Unfortunately, the support service is not an instant service, it requires time to answer because, in the meanwhile, I’m assisting other clients.

Please give a look the the other comment you left.

Hi Vanquish

On our checkout page, the dropdown address selections are disabled.

They have data in the source code, but you can’t use the drop down until I remove the select2-hidden-accessible class from the select element.

Hi,
without any further clue, it is quite hard to determine the cause. Most likely something is interfering. Please try disabling the other plugins (and eventually switching the theme) to see if the issue still occurs. If not, re-enable one by one until you find the interfering one.

Hi,

I bought multiple shipping address plugin for my website. I am getting warning on my website. Help me to fix the issue.

checkout/:166 Scripts that have a dependency on [wc-blocks-checkout] must be loaded in the footer, flexible-shipping-ups-blocks-integration-frontend was registered to load in the header, but has been switched to load in the footer instead. See https://github.com/woocommerce/woocommerce-gutenberg-products-block/pull/5059 (anonymous) @ checkout/:166

Hi,
I’m sorry, but the plugin doesn’t depend on wc-block. Furthermore, the warning message you report does not reference the WooCommerce Multiple Customer Addresses plugin.

Hello, the error message appears on our website: PHP Warning: session_start(): Cannot start session when headers already sent in /mnt/data/home/873692.cloudwaysapps.com/mtuyusnqtw/public_html/wp-content/plugins/woocommerce-multiple-customer-addresses/classes/com/WCMCA_Session.php on line 11

How can I solve it?

Thank you. Martin

Hi Martin,
That message is usually displayed when something is outputting text before the header is rendered. You need to find which is outputting that text.

Please note that is a warning not an error message. It means that no script is crashing preventing the site to work as expected

Hi there, I bought multiple shipping address plugin for my site and i have 2 queries regarding functionality and performance of this plugin. 1. Why its not using Google api to auto complete address ? I have already installed other plugin Address autocompletes but when as user i am adding any address in this plugin on checkout page its not auto-completing it. I don’t know why. It would be great if there is any setting in this plugin will allow user to use google api to complete address so user wont make mistakes.

2. first i have uploaded this plugin on my staging site and entered license key for testing now when i installed this on my production site i can’t activate this even though i have deactivated from staging site. Can you please help me. I have used same license key which was mentioned in pdf file for but for production it’s not activating.

Hi, thank you for purchasing
  1. Thank you for your suggestion, I’ll try doing my best for a future release
  2. Which kind of error are you getting? Have you used a fully HTML5 compliant browser like Chrome or Firefox? Could you try disabling the other plugins? If you send me via private message (click on my name then use the low-right box) reporting your email, wp-admin access, and FTP access I can perform some further analysis
by
by
by
by
by
by

Tell us what you think!

We'd like to ask you a few questions to help improve CodeCanyon.

Sure, take me to the survey