wc_format_postcode()
Format the postcode according to the country and length of the postcode.
Hooks from the function
Return
String
.
Usage
wc_format_postcode( $postcode, $country );
- $postcode(string) (required)
- Unformatted postcode.
- $country(string) (required)
- Base country.
wc_format_postcode() wc format postcode code WC 9.6.1
function wc_format_postcode( $postcode, $country ) { $postcode = wc_normalize_postcode( $postcode ?? '' ); switch ( $country ) { case 'SE': $postcode = substr_replace( $postcode, ' ', -2, 0 ); break; case 'CA': case 'GB': $postcode = substr_replace( $postcode, ' ', -3, 0 ); break; case 'IE': $postcode = substr_replace( $postcode, ' ', 3, 0 ); break; case 'BR': case 'PL': $postcode = substr_replace( $postcode, '-', -3, 0 ); break; case 'JP': $postcode = substr_replace( $postcode, '-', 3, 0 ); break; case 'PT': $postcode = substr_replace( $postcode, '-', 4, 0 ); break; case 'PR': case 'US': case 'MN': $postcode = rtrim( substr_replace( $postcode, '-', 5, 0 ), '-' ); break; case 'NL': $postcode = substr_replace( $postcode, ' ', 4, 0 ); break; case 'LV': $postcode = preg_replace( '/^(LV)?-?(\d+)$/', 'LV-${2}', $postcode ); break; case 'CZ': case 'SK': $postcode = preg_replace( "/^({$country})-?(\d+)$/", '${1}-${2}', $postcode ); $postcode = substr_replace( $postcode, ' ', -2, 0 ); break; case 'DK': $postcode = preg_replace( '/^(DK)(.+)$/', '${1}-${2}', $postcode ); break; } return apply_filters( 'woocommerce_format_postcode', trim( $postcode ), $country ); }