删除订单()不起作用。 Woocommerce,wordpress

时间:2016-09-08 03:39:01

标签: php wordpress woocommerce

当用户没有足够的积分时,我正在制作一个用于删除Woocommerce order的插件。但删除wp_delete_post();无效。

function delete_order($order)
{
     global $post; 
     $order_id = absint( get_query_var( 'order-pay' ) );

     //If the user do not have enough point
     if(get_user_bonus_point() < (int)$order->get_total())
     $post->wp_delete_post($order_id,true);
}
add_action('woocommerce_checkout_order_processed', 'delete_order', 10, 1);

但是在我下订单后,订单没有删除。但是在下订单时其他功能也可以使用。

由于

1 个答案:

答案 0 :(得分:2)

请尝试以下代码:

function delete_order($order_id)
{
     global $post; 
     $order = new WC_Order( $order_id );
     //If the user do not have enough point
     if(get_user_bonus_point() < (int)$order->get_total())
     $post->wp_delete_post($order_id,true);
}
add_action('woocommerce_checkout_order_processed', 'delete_order', 10, 1);