从WC_Order_Item_Product/Order获取资源ID

时间:2018-03-23 作者:Mac

我一直在试图找出如何从产品线数据中获得WC订单上的ressource,但我似乎无法在WC 3.0+-之前的版本中找到这一点,因为这非常容易<我已经查看了预订元数据、订单元数据以及我能想到的所有其他内容,但仍然找不到我要找的内容
我有1个ID为194的产品,该产品有2个资源-我正在订单行中查找资源。

代码:

$order = new WC_Order((int)$order_id);
$orderLine = array_values($order->get_items())[0];
插件:

更新的WooCommerce预订

2 个回复
最合适的回答,由SO网友:Mac 整理而成

因此,我找到了一个“解决方案”,尽管它没有我所希望的那么好,或者至少没有3.0之前的好。

$iOrderID = $_POST[\'iOrderID\'];
$aBookingQuery = new WP_Query( 
    array( 
        \'post_parent\'       => (int)$iOrderID,
        \'post_type\'         => \'wc_booking\',
        \'posts_per_page\'    => 1 
        )
    );
 = $aBookingQuery->posts[0]->ID;
$iBookingRessoureceID = get_post_meta($iBookingID)[\'_booking_resource_id\'][0];
这将为您提供所述预订产品的ressource ID。

SO网友:TurtleTread

对于现有订单,您需要使用wc_get_order() 作用

结束