woocommerce_checkout_order_processed posts_data 未收到

问题描述 投票:0回答:1

我的函数未收到在“woocommerce_checkout_order_processed”挂钩中传递的发布数据。 我检查了 class-wc-checkout 以确保数据在调用之前存在。

这是我的函数文件中的设置:

add_action( 'woocommerce_checkout_order_processed', 'wp_zlc_woocommerce_checkout_order_processed',10 );
function wp_zlc_woocommerce_checkout_order_processed($order_id,$posted_data=NULL,$order=NULL){

如果我不将 posts_data 和 $order 变量设置为 NULL,则代码将失败并显示: PHP 致命错误:未捕获的 ArgumentCountError:函数 wp_zlc_woocommerce_checkout_order_processed() 的参数太少,1 个已通过......

我尝试了多种方案都没有成功

hook-woocommerce
1个回答
0
投票

试试这个:

add_action( 'woocommerce_checkout_order_processed', 'wp_zlc_woocommerce_checkout_order_processed',10, 3);

这样做的原因是因为动作

woocommerce_checkout_order_processed
有3个参数,因此在
add_action()
中,需要在末尾添加3来指示函数传递的参数数量。

参考:WP add_action()函数

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.