2017-04-13 68 views
0

我卖产品到4个国家;美国,加拿大,英国和法国。我已启用2种结帐方式;货到付款(鳕鱼)和贝宝。我想限制鳕鱼只能加拿大,躲藏在其他国家。我尝试了下面的代码,但它使鳕鱼从所有国家(包括加拿大)消失。我知道我在这里做错了事,我不是专家,所以需要你的帮助。谢谢WordPress的:货到付款只限于一个国家

/** 
* @snippet  WooCommerce Disable Payment Gateway for a Specific Country 
*/ 

function payment_gateway_disable_country($available_gateways) { 
global $woocommerce; 
if (isset($available_gateways['cod']) && $woocommerce->customer->get_country() <> 'France') { 
unset($available_gateways['cod']); 
} else if (isset($available_gateways['cod']) && $woocommerce->customer->get_country() == 'France') { 
unset($available_gateways['cod']); 
} 
return $available_gateways; 
} 

add_filter('woocommerce_available_payment_gateways', 'payment_gateway_disable_country'); 

回答

0

这应该这样做。

function payment_gateway_disable_country($available_gateways) { 
    global $woocommerce; 
    if (isset($available_gateways['cod']) && $woocommerce->customer->get_country() <> 'Canada') { 
     unset($available_gateways['cod']); 
    } 
    return $available_gateways; 
} 

add_filter('woocommerce_available_payment_gateways', 'payment_gateway_disable_country');