在Woocommerce中,我试图使用以下代码获取最后一个订单ID:
<?php $order = new WC_Order($post->ID);echo $order->id;//to escape # from order id $order_id = trim(str_replace('#', '', $order->get_order_number())); ?>
但它不起作用,因为我得到零值。
目的是在最后一个订单ID中添加1,以获取新的可用订单ID。
任何帮助表示赞赏。
您似乎希望获得下一个可用的POST ID(订单ID),以便将其保存为例如数据库中包含一些相关数据的新订单。
这绝对不是这样做的方式,你需要认为它不同......现在你可以使用以下三种方法之一:
wp_insert_post()
。wc_create_order()
返回WC_Order
对象。
然后从订单对象中,您可以使用$order->get_id()
获取订单ID。WC_Order
对象实例和save()
方法:
// Get an empty instance of the `WC_Order` Object
$order = new WC_Order();
// Save the order to the database
$order->save();
// Get the Order ID
$order_id = $order->get_id();
添加 - 获取Woocommerce中的最后订单ID:
要获取并显示woocommerce中的最后一个订单ID,请在这两个简单的行中使用WC_Order_Query
:
<?php
$last_order_id = wc_get_orders(array('limit' => 1, 'return' => 'ids')); // Get last Order ID (array)
echo (string) reset($last_order_id); // Displaying last order ID
?>
经过测试和工作