【问题标题】:Woocommerce order delete hook callback is not being called未调用 Woocommerce 订单删除挂钩回调
【发布时间】:2016-06-28 14:09:52
【问题描述】:

我正在尝试将一个函数与订单删除挂钩(当从管理页面单击永久删除时)但由于某种原因未调用该函数。我的代码看起来像

add_action('woocommerce_before_delete_order_item', function($id) {
    $order = new WC_Order($id);
    //do some stuff with order meta data
}, 10, 1);

我试图在函数内部抛出异常,但没有发生错误。有人可以帮忙吗?

【问题讨论】:

  • 您是否尝试在订单被删除或订单上的项目被删除时进行挂钩?您正在参与项目删除操作。
  • 下单完成点击永久删除后我正在尝试hook函数
  • 您想在订单删除功能上应用挂钩?

标签: php wordpress woocommerce hook


【解决方案1】:

woocommerce_before_delete_order_item 操作会在每次从订单中删除商品时运行,而不是每次删除订单时运行。你需要使用before_delete_post钩子:

add_action('before_delete_post', function($id) {
    $post_type = get_post_type($id);

    if ($post_type !== 'shop_order') {
        return;
    }

    $order = new WC_Order($id);
    //do some stuff with order meta data
}, 10, 1);

根据您想要执行的操作,您可能希望通过将优先级参数从 10 更改为更小的值来在更早的阶段连接到操作。

【讨论】:

  • 还有woocommerce_delete_order钩子(不知道是不是新的,但我想为其他阅读过它的人提一下)
  • @Petschko,看起来woocommerce_delete_order 被调用 订单被删除:github.com/woocommerce/woocommerce/blob/…
  • 感谢您提供这些信息,在某些情况下,仅在订单被删除后 进行操作会很有用
【解决方案2】:

如果您打算使用管理仪表板订单详细信息页面中的移动到 thrash,您可以使用wp_trash_postbefore_delete_post 对我不起作用。

function onOrderDelete($orderId){
    $post_type = get_post_type($orderId);
    if($post_type !== 'shop_order') {
        return;
    }
    $order = wc_get_order($orderId);
    // do whatever with $order
}
add_action('wp_trash_post', 'onOrderDelete', 10, 1);

【讨论】:

    【解决方案3】:
    function restrict_post_deletion($post_ID){
        $type = get_post_type($post_ID);
        if($type == 'shop_order'){
                $order = new WC_Order($post_ID);
               //do some stuff with order data
        }
    }
    add_action('wp_trash_post', 'restrict_post_deletion', 10, 1);
    add_action('before_delete_post', 'restrict_post_deletion', 10, 1);
    

    试试这个代码sn-p

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-21
      • 2017-06-10
      • 2020-08-17
      • 2020-10-25
      • 2017-09-17
      • 2013-11-01
      • 1970-01-01
      • 2021-11-25
      相关资源
      最近更新 更多