WC_Tax::_update_tax_rate_postcodes PHP Méthode

_update_tax_rate_postcodes() public static méthode

Internal use only.
Since: 2.3.0
public static _update_tax_rate_postcodes ( integer $tax_rate_id, string $postcodes ) : string
$tax_rate_id integer
$postcodes string String of postcodes separated by ; characters
Résultat string
    public static function _update_tax_rate_postcodes($tax_rate_id, $postcodes)
    {
        if (!is_array($postcodes)) {
            $postcodes = explode(';', $postcodes);
        }
        // No normalization - postcodes are matched against both normal and formatted versions to support wildcards.
        foreach ($postcodes as $key => $postcode) {
            $postcodes[$key] = strtoupper(trim(str_replace(chr(226) . chr(128) . chr(166), '...', $postcode)));
        }
        self::_update_tax_rate_locations($tax_rate_id, array_diff(array_filter($postcodes), array('*')), 'postcode');
    }

Usage Example

 /**
  * add_eu_countries_vat_rates.
  *
  * @version 2.3.10
  * @since   2.3.10
  */
 function add_eu_countries_vat_rates()
 {
     if (!isset($_POST['add_eu_countries_vat_rates'])) {
         return;
     }
     if (!is_super_admin() && !is_shop_manager()) {
         return;
     }
     $loop = 0;
     foreach (wcj_get_european_union_countries_with_vat() as $country => $rate) {
         $tax_rate = array('tax_rate_country' => $country, 'tax_rate' => $rate, 'tax_rate_name' => isset($_POST['wcj_tax_name']) ? $_POST['wcj_tax_name'] : __('VAT', 'woocommerce'), 'tax_rate_priority' => 1, 'tax_rate_compound' => 0, 'tax_rate_shipping' => 1, 'tax_rate_order' => $loop++, 'tax_rate_class' => '');
         $tax_rate_id = WC_Tax::_insert_tax_rate($tax_rate);
         WC_Tax::_update_tax_rate_postcodes($tax_rate_id, '');
         WC_Tax::_update_tax_rate_cities($tax_rate_id, '');
     }
 }
All Usage Examples Of WC_Tax::_update_tax_rate_postcodes