php发布产品隐藏显示,php – 在WooCommerce中隐藏基于产品类型的付款方式

这是一个在woocommerce_available_payment_gateways过滤器钩子中使用自定义钩子函数的示例,我可以根据购物车项目(产品类型)禁用支付网关:

add_filter('woocommerce_available_payment_gateways', 'conditional_payment_gateways', 10, 1);

function conditional_payment_gateways( $available_gateways ) {

// Not in backend (admin)

if( is_admin() )

return $available_gateways;

foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item ) {

$prod_variable = $prod_simple = $prod_subscription = false;

// Get the WC_Product object

$product = wc_get_product($cart_item['product_id']);

// Get the product types in cart (example)

if($product->is_type('simple')) $prod_simple = true;

if($product->is_type('variable')) $prod_variable = true;

if($product->is_type('subscription')) $prod_subscription = true;

}

// Remove Cash on delivery (cod) payment gateway for simple products

if($prod_simple)

unset($available_gateways['cod']); // unset 'cod'

// Remove Paypal (paypal) payment gateway for variable products

if($prod_variable)

unset($available_gateways['paypal']); // unset 'paypal'

// Remove Bank wire (Bacs) payment gateway for subscription products

if($prod_subscription)

unset($available_gateways['bacs']); // unset 'bacs'

return $available_gateways;

}

代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中.

所有代码都在Woocommerce 3上进行测试并且有效.

This is just an example to show you how things can work. You will have to adapt it

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值