MichelH

Show full address of WCFM vendor store in checkout for local pickup

Apr 5th, 2023 (edited)
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.38 KB | Source Code | 0 0
  1. add_filter('wcfmmp_local_pickup_shipping_option_label', function($label, $vendor_id) {
  2.     if(!$vendor_id) return $label;
  3.     $store_user = wcfmmp_get_store( $vendor_id );
  4.     $store_address = $store_user->get_address();
  5.  
  6.     $addr_1  = isset( $store_address['street_1'] ) ? $store_address['street_1'] : '';
  7.     $city    = isset( $store_address['city'] ) ? $store_address['city'] : '';
  8.     $state   = isset( $store_address['state'] ) ? $store_address['state'] : '';
  9.     $country = isset( $store_address['country'] ) ? $store_address['country'] : '';
  10.     $country_obj   = new WC_Countries();
  11.     $countries     = $country_obj->countries;
  12.     $states        = $country_obj->states;
  13.     $country_name  = '';
  14.     $state_name    = '';
  15.     if( $state ) $state_name = $state;
  16.     if( $country ) $country_name = $country;
  17.     if( $state && isset( $states[$country] ) && is_array( $states[$country] ) ) {
  18.         $state_name = isset($states[$country][$state]) ? $states[$country][$state] : '';
  19.     }
  20.     if( $country && isset( $countries[$country] ) ) {
  21.         $country_name = $countries[$country];
  22.     }
  23.     $address = '';
  24.     if( $addr_1 ) $address .= $addr_1 . ", ";
  25.     if( $city ) $address .= $city . ", ";
  26.     if( $state_name ) $address .= $state_name . ", ";
  27.     if( $country_name ) $address .= $country_name;
  28.     return preg_replace('/\((.+?)\)$/', "({$address})", $label);
  29. }, 10, 2);
  30.  
Advertisement
Add Comment
Please, Sign In to add comment