有条件地从 WooCommerce 我的帐户订单中删除取消按钮
Posted
技术标签:
【中文标题】有条件地从 WooCommerce 我的帐户订单中删除取消按钮【英文标题】:Remove cancel button from WooCommerce My account Orders conditionally 【发布时间】:2019-10-04 07:31:29 【问题描述】:当“付款方式标题”为“Npay”时,我想确保取消按钮在我的帐户中不可见>我的订单。
“Npay”是一个外部支付网关,不适用于商业。因此,取消付款只能在外部进行。
add_filter('woocommerce_my_account_my_orders_actions', 'remove_my_cancel_button', 10, 2);
function remove_my_cancel_button($actions, $order)
if ( $payment_method->has_title( 'Npay' ) )
unset($actions['cancel']);
return $actions;
【问题讨论】:
【参考方案1】:要从“我的帐户订单”中删除取消按钮,我们使用以下方法:
add_filter('woocommerce_my_account_my_orders_actions', 'remove_myaccount_orders_cancel_button', 10, 2);
function remove_myaccount_orders_cancel_button( $actions, $order )
unset($actions['cancel']);
return $actions;
但是要从我的帐户订单中删除取消按钮根据付款标题,您将使用WC_Order
方法get_payment_method_title()
喜欢:
add_filter('woocommerce_my_account_my_orders_actions', 'remove_myaccount_orders_cancel_button', 10, 2);
function remove_myaccount_orders_cancel_button( $actions, $order )
if ( $order->get_payment_method_title() === 'Npay' )
unset($actions['cancel']);
return $actions;
代码在您的活动子主题(或活动主题)的functions.php 文件中。经过测试并且可以工作。
主变量参数
$actions
需要在IF
语句之外的末尾返回
【讨论】:
以上是关于有条件地从 WooCommerce 我的帐户订单中删除取消按钮的主要内容,如果未能解决你的问题,请参考以下文章
在 WooCommerce 我的帐户订单列表上显示产品缩略图
仅在商品属于特定类别时显示 WooCommerce 我的帐户订单
在 WooCommerce 上添加支付订单按钮我的帐户查看订单待处理订单