Php 如果应用了优惠券,请删除一个支付网关
如果应用了至少1张优惠券,我将尝试删除特定的支付网关。我尝试了应答代码,但没有结果,要删除的支付网关的slug是“scalapay_gateway” 有什么帮助吗?试着这样做:Php 如果应用了优惠券,请删除一个支付网关,php,wordpress,woocommerce,Php,Wordpress,Woocommerce,如果应用了至少1张优惠券,我将尝试删除特定的支付网关。我尝试了应答代码,但没有结果,要删除的支付网关的slug是“scalapay_gateway” 有什么帮助吗?试着这样做: add_filter('woocommerce_available_payment_gateways', 'unset_gatway_by_applied_coupons'); function unset_gatway_by_applied_coupons($available_gateways) { $c
add_filter('woocommerce_available_payment_gateways', 'unset_gatway_by_applied_coupons');
function unset_gatway_by_applied_coupons($available_gateways)
{
$coupons = WC()->cart->applied_coupons;
foreach ($coupons as $coupon) {
if(isset($available_gateways['scalapay_gateway'])){
unset($available_gateways['scalapay_gateway']);
}
}
return $available_gateways;
}
代码运行得非常完美,因此您的问题可能是由于错误的支付ID slug造成的。感谢您对@LoicTheAztec的编辑和回答,但是下面由Elman Huseynov给出的答案在第一次尝试时就起到了作用。谢谢你们两位!谢谢vm,如果我想删除每个优惠券代码的网关怎么办?