Иногда база данных стран в WooCommerce оказывается неполной. В то время как команда WooCommerce обычно очень оперативно обновляет свой код и добавляет новые страны, иногда вам может потребоваться внести изменения самостоятельно и добавить новую страну на WooCommerce.
Давайте, например, рассмотрим Северную Ирландию. Она не является «страной«, однако большинство ирландских компаний доставляют товары именно в Северную Ирландию, а не в «Великобританию«. Поэтому добавление «Северной Ирландии» в выпадающие списки стран на странице оформления заказа может оказаться полезным.
В этом случае мы рассмотрим, как добавить новую страну, как убедиться, что эта страна отображается в качестве возможного варианта на странице оформления заказа (и в разделе управления зонами доставки), а также как назначить для нее свой список регионов. Ведь всякое бывает!
add_filter( 'woocommerce_countries', 'genius_add_country' );
function genius_add_country( $countries ) {
   $new_country = array(
      'XI' => 'Северная Ирландия',
   );
   return array_merge( $countries, $new_country );
}
add_filter( 'woocommerce_continents', 'genius_add_country_to_continent' );
function genius_add_country_to_continent( $continents ) {
   $continents['EU']['countries'][] = 'XI';
   return $continents;
}
add_filter( 'woocommerce_states', 'genius_add_country_states' );
function genius_add_country_states( $states ) {
   $states['XI'] = array(
      'AN' => 'Антрим',
      'AR' => 'Арма',
      'DY' => 'Лондондерри',
      'DO' => 'Даун',
      'FM' => 'Фермана',
      'TR' => 'Тайрон',
   );
   return $states;
}
В приведенном выше примере мы используем хуки (фильтры) WooCommerce для добавления пользовательской страны, а также для настройки соответствующих регионов (штатов) для этой страны. Например, мы создаем новую страну с кодом «XI» и названием «Северная Ирландия», а затем добавляем эту страну в континент «EU». Кроме того, мы указываем пользовательский список регионов для Северной Ирландии, включающий Антрим, Арму, Лондондерри, Даун, Ферману и Тайрон.
Таким образом, с помощью приведенного кода вы сможете добавить новую страну для оплаты и доставки в WooCommerce и настроить соответствующие регионы для этой страны.
        
                          
