我不是要查明订单何时完成或何时更新其状态,而是在更新此字段时。
目前我正在使用woocommerce_process_shop_order_meta
挂钩,但它似乎无效。
有什么建议吗? 谢谢!
- 编辑 -
woocommerce_process_shop_order_meta
是要使用的righ hook,我在这个钩子触发的函数中出错了所以如果你需要在管理页面中单击更新顺序后运行一个函数,这是正确的方法这样做。
答案 0 :(得分:3)
如编辑中所写,如果您想在订单更新时触发功能或响应,woocommerce_process_shop_order_meta
是正确使用的挂钩。
答案 1 :(得分:1)
我最终使用了 save_post_shop_order
钩子。在以下事件中调用它:
为了仅观看订单更新,您必须过滤掉非订单类型的帖子并像这样发布作品:
add_action (
'save_post_shop_order',
function (int $postId, \WP_Post $post, bool $update): void
{
// Ignore order (post) creation
if ($update !== true) {
return;
}
// Here comes your code...
},
10,
3
);
首先,woocommerce_after_order_object_save
似乎是一个不错的选择,但根据我的经验,它在单个订单更新时运行 3 次(在没有插件的简单工厂安装中)。在前 2 次运行时,订单数据甚至不是最新的(状态是更新前的状态),所以我觉得这个钩子没用。