如何在WooCommerce中删除特定国家/地区

时间:2016-06-01 12:25:06

标签: php wordpress woocommerce checkout country

有人可以告诉我如何从woocommerce中删除特定国家/地区。在woocommerce中可以选择销售所有国家和地区的地点。

但是我想卖给除了美国的1个国家以外的所有国家!那么我如何从国家/地区列表中删除美国。就像我使用"特定国家"选项然后我将不得不添加除美国以外的所有国家,这是更长的过程。

是否有任何代码可以帮助我,我可以将其置于主题功能中,以便美国国家/地区在结帐时不会出现在国家/地区列表中?

2 个答案:

答案 0 :(得分:3)

尝试以下代码段

function woo_remove_specific_country( $country ) 
{
   unset($country["US"]);
   return $country; 
}
add_filter( 'woocommerce_countries', 'woo_remove_specific_country', 10, 1 );

参考 http://www.boopathirajan.com/remove-specific-country-woocommerce-country-list/

答案 1 :(得分:0)

如果要保留多个国家/地区,但只有钥匙,请执行以下操作:

function woo_remove_specific_country( $countries ) {

    global $woocommerce;

    // default do not limit
    $limited_countries = array_values(array_flip($countries));

    // Country array to keep
    $eu = $woocommerce->countries->get_european_union_countries( );

    // keep countries, sort them out of the full array to keep the names
    $found   = array_filter($countries, function($item) use ($eu) {
        return in_array($item, $eu);
    }, ARRAY_FILTER_USE_KEY); // USE_KEY is essential cause we are filtering the language codes

    // return the found countries
    return $found;
}
add_filter( 'woocommerce_countries', 'woo_remove_specific_country', 10, 1 );