WooCommerce 在订单接收端点获取订单 ID 和订单密钥 [重复]
Posted
技术标签:
【中文标题】WooCommerce 在订单接收端点获取订单 ID 和订单密钥 [重复]【英文标题】:WooCommerce get order id and order key at order-received endpoint [duplicate] 【发布时间】:2020-08-26 05:14:29 【问题描述】:我试图在重定向客户之前在结帐时获取订单号和订单密钥(wc_order=xxx 参数),但我不知道该怎么做。我的代码在下面,但它不起作用:
add_action( 'template_redirect', 'ui_redirect' );
function ui_redirect()
global $woocommerce;
//if the current page is the order received and if there's an order key
if (is_wc_endpoint_url( 'order-received' ) )
$order_key = wc_get_order_id_by_order_key( $_GET['key'] );
$order_id = wc_get_order( $order_id );
wp_redirect( 'redirection here with parameters');
exit;
【问题讨论】:
【参考方案1】:add_action( 'woocommerce_thankyou', 'woocommerce_thankyou_redirect', 4 );
function woocommerce_thankyou_redirect( $order_id )
//$order_id. // This contains the specific ID of the order
$order = wc_get_order( $order_id );
$order_key = $order->get_order_key();
wp_redirect( 'redirection here with parameters' );
exit;
试试这个代码 sn-p。
【讨论】:
order_key 可以,但是$order_id
确实收到了完整的订单数据,例如:order: "id":1685,"parent_id":0,"status":"processing","currency":"USD","version":"4.1.0","prices_include_tax":false,"date_created":"date":"2020-05-10 15:23:12.000000","timezone_type": (etc)...
我只想要订单号,而不是完整的数组。在上面的例子中,只有数据“1685”(order-id)。
太棒了!非常感谢!以上是关于WooCommerce 在订单接收端点获取订单 ID 和订单密钥 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
WooCommerce Rest Api:按特定日期获取订单