wc_format_postcode( string $postcode, string $country )
Format the postcode according to the country and length of the postcode.
Description Description
Parameters Parameters
- $postcode
-
(Required) Unformatted postcode.
- $country
-
(Required) Base country.
Return Return
(string)
Source Source
File: includes/wc-formatting-functions.php
function wc_format_postcode( $postcode, $country ) {
$postcode = wc_normalize_postcode( $postcode );
switch ( $country ) {
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 'US':
$postcode = rtrim( substr_replace( $postcode, '-', 5, 0 ), '-' );
break;
case 'NL':
$postcode = substr_replace( $postcode, ' ', 4, 0 );
break;
}
return apply_filters( 'woocommerce_format_postcode', trim( $postcode ), $country );
}