批量订单状态(woocommerce)的挂钩是什么?

what would be the hook called for bulk order status (woocommerce)?

我想调用我的 自定义函数 批量订单状态已更改,添加一些额外的功能。 为此,我尝试了以下钩子,但没有任何效果..

add_action( 'admin_action_woocommerce_order_status', 'bulk_order_my_function' ); 
add_action( 'admin_action_woocommerce_order_status_processing', 'bulk_order_my_function' ); 
add_action( 'admin_action_wc_processing', 'bulk_order_my_function' ); 
add_action( 'admin_action_woocommerce_processing', 'bulk_order_my_function' ); 

我更感兴趣的是用于批量订单更新的一般订单状态挂钩,而不是为每个状态创建单独的函数。 即: 所以在我的一个函数中 基于 IF/ELSE 条件我可以把我的逻辑。

如有大神帮忙,不胜感激

所以我下载了整个 woocommerce 包并在 woocommerce 文件夹中找到字符串 bulk 当然我在下面找到了钩子提到的文件:

\woocommerce\includes\admin\list-tables\abstract-class-wc-admin-list-table.php

我们可以使用的钩子是

add_filter( 'handle_bulk_actions-edit-shop_order', 'bulk_order_stock_update', 10, 3 ); 

函数会像下面这样

function bulk_order_stock_update($redirect_to, $action, $ids) {
if ( false !== strpos( $action, 'mark_' ) ) {
        $new_status     = substr( $action, 5 ); // Get the status name from action.
        $report_action  = 'marked_' . $new_status;
        
        //place your some condition here....
   }
}