如何找到客户在WooCommerce数据库中订购的产品?

时间:2014-11-21 13:53:26

标签: php mysql database wordpress woocommerce

我知道订单位于wp_posts表中,其post_type为shop_order。并且wp_postmeta表保存有关每个订单的信息,例如姓名,地址,状态等。但是,我缺少的是用户订购的项目。

我无法找到数据库中的关系来获取该信息。

有人能指出我正确的方向吗?

3 个答案:

答案 0 :(得分:1)

如果我理解你的问题,这就是你需要的:

$sql = "SELECT * FROM wp_posts "
    . " INNER JOIN wp_postmeta ON wp_posts.id = wp_postmeta.post_id"
    . " WHERE wp_posts.ID = " . $postId;

然后查看wp_postmeta键。

答案 1 :(得分:1)

为什么不让WooCommerce为您获取物品?

// create the order object
$order = wc_get_order( $order_id );
// retrieve the items associated with that order
$order_items = $order->get_items();
// dump the array of returned  items
var_dump($order_items);

答案 2 :(得分:0)

订单存储为您所说的帖子。

对于产品,您必须继续使用wp_woocommerce_order_items和wp_woocommerce_order_itemmeta

有一个加入的例子

inner join wp_woocommerce_order_items as woi on ( woi.order_id = posts.ID )
inner join wp_woocommerce_order_itemmeta as woim on ( woim.order_item_id = woi.order_item_id )