wordpress中的Woocommerce - 最近售出的产品?

时间:2014-03-27 09:43:32

标签: php mysql sql wordpress woocommerce

我目前正试图在woocommerce中获得最近销售的产品。在数据库表 woocommerce_order_items 中,我可以看到每个购买的产品,以及它所拥有的item_order_id以及它所属的order_id。如果我将此表格降序排序,我会收到最近购买的产品,但我在此表格中没有product ID

我需要从表中循环显示此信息,并根据order_item_id获取产品ID,以显示上次在网站上销售的产品。

这是否可以正常循环?或者我必须使用WPDB吗?事实上,最终,您应该能够按最新添加的产品,大多数销售的产品和最新销售的产品对产品进行分类。这两个首先使用了一个正常的循环,如果我能用它来获取最新的产品,那将是很好的。

谢谢!

1 个答案:

答案 0 :(得分:0)

我知道这是一个老问题,但我有一个非常类似的探测器。我最终使用了这个:

// get order_id's from the past 7 days and loop through them ( thanks to http://club.orbisius.com/howto/woocommerce/list-recently-completed-woocommerce-orders/ )
$after_date    = date( 'Y-m-d', strtotime('-7 days') );
$args = array(
    'post_type' => 'shop_order',
    'post_status' => 'publish',
    'posts_per_page' => -1
);

$args['date_query'] = array(
    'after' => $after_date,
    'inclusive' => true
);
$posts = get_posts( $args );

foreach( $posts as $post ) {

    $order = new WC_Order($post->ID);
    $products = $order->get_items(); // get products in current order

    // loop through products to find matching id's and add qty when matching current id
    foreach ( $products as $product ) {

        // do your stuff as you wish here

    } // end foreach $product

} // end foreach $post