Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- add_action( 'woocommerce_check_cart_items', 'check_cart_items_for_shipping' );
- function check_cart_items_for_shipping() {
- $allowed_variation_id = '513'; // Here defined the allowed Variation ID
- $allowed_country = 'US'; // Here define the allowed shipping country for all variations
- $shipping_country = WC()->customer->get_shipping_country();
- $countries = WC()->countries->get_countries();
- // Loop through cart items
- foreach(WC()->cart->get_cart() as $cart_item ) {
- // Check cart item for defined product Ids and applied coupon
- if( $shipping_country !== $allowed_country && $cart_item['variation_id'] !== $allowed_variation_id ) {
- wc_clear_notices(); // Clear all other notices
- // Avoid checkout displaying an error notice
- wc_add_notice( sprintf( __('The product "%s" can not be shipped to %s.'),
- $cart_item['data']->get_name(),
- $countries[$shipping_country]
- ), 'error' );
- break; // stop the loop
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement