我知道订单位于wp_posts表中,其中shop_order的post_type。 wp_postmeta表包含每个订单的信息,例如名称,地址,状态等。但是,我缺少的是用户订购的项目。如何查找在WooCommerce数据库中订购的客户产品?
我无法找到什么关系是在数据库中拉取该信息。
难道有人指着我正确的方向吗?
我知道订单位于wp_posts表中,其中shop_order的post_type。 wp_postmeta表包含每个订单的信息,例如名称,地址,状态等。但是,我缺少的是用户订购的项目。如何查找在WooCommerce数据库中订购的客户产品?
我无法找到什么关系是在数据库中拉取该信息。
难道有人指着我正确的方向吗?
为什么不让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);
如果我理解你的问题,这是你所需要的:
$sql = "SELECT * FROM wp_posts "
. " INNER JOIN wp_postmeta ON wp_posts.id = wp_postmeta.post_id"
. " WHERE wp_posts.ID = " . $postId;
然后看到wp_postmeta
键。
如您所说,订单以邮件形式存储。
对于产品,你必须去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)
我附带上一个值顺序的ID发现它在wp_woocommerce_order_items表的例子。 – aschmelyun 2014-11-21 14:38:16