我想创建一个页面,显示来自数据库的查询,以显示一些订单详细信息。如何在页面上显示此查询?
i34xakig1#
获取订单有多种方式:1) 商业有专门的功能 wc_get_orders() 这将为您提供一个wc\u order对象数组:
wc_get_orders()
$orders = wc_get_orders( array('numberposts' => -1) );// Loop through each WC_Order objectforeach( $orders as $order ){ echo $order->get_id() . '<br>'; // The order ID echo $order->get_status() . '<br>'; // The order status}
$orders = wc_get_orders( array('numberposts' => -1) );
// Loop through each WC_Order object
foreach( $orders as $order ){
echo $order->get_id() . '<br>'; // The order ID
echo $order->get_status() . '<br>'; // The order status
}
要获取订单数据,请参见下面的链接2) 你也可以使用wordpress WP_Query :
WP_Query
$loop = new WP_Query( array( 'post_type' => 'shop_order', 'post_status' => array_keys( wc_get_order_statuses() ), 'posts_per_page' => -1,) );// The Wordpress post loopif ( $loop->have_posts() ): while ( $loop->have_posts() ) : $loop->the_post();// The order ID$order_id = $loop->post->ID;// Get an instance of the WC_Order Object$order = wc_get_order($loop->post->ID);endwhile;wp_reset_postdata();endif;
$loop = new WP_Query( array(
'post_type' => 'shop_order',
'post_status' => array_keys( wc_get_order_statuses() ),
'posts_per_page' => -1,
) );
// The Wordpress post loop
if ( $loop->have_posts() ):
while ( $loop->have_posts() ) : $loop->the_post();
// The order ID
$order_id = $loop->post->ID;
// Get an instance of the WC_Order Object
$order = wc_get_order($loop->post->ID);
endwhile;
wp_reset_postdata();
endif;
要获取订单数据,请参见下面的链接3) 您可以使用sql查询
global $wpdb;$results = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}posts WHERE post_type LIKE 'shop_order'");// Loop through each order post objectforeach( $results as $result ){ $order_id = $result->ID; // The Order ID // Get an instance of the WC_Order Object $order = wc_get_order( $result->ID );}
global $wpdb;
$results = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}posts WHERE post_type LIKE 'shop_order'");
// Loop through each order post object
foreach( $results as $result ){
$order_id = $result->ID; // The Order ID
$order = wc_get_order( $result->ID );
您将能够从 WC_Order 对象,如中所述:如何获取订单详细信息在woocommerce 3中获取订单项目和wc\订单项目\产品将数据显示为表中的列表要在列表中显示订单,您应该查看不推荐使用的模板myaccount/my-orders.php或myaccount/orders.php模板…它会给你一个模型…
WC_Order
u4vypkhs2#
只要是最后执行的查询,就可以使用 $wpdb->last_query 获取最后一个查询。你需要 define('SAVEQUERIES', true) 在你的 wp-config.php 为了这个
$wpdb->last_query
define('SAVEQUERIES', true)
wp-config.php
2条答案
按热度按时间i34xakig1#
获取订单有多种方式:
1) 商业有专门的功能
wc_get_orders()
这将为您提供一个wc\u order对象数组:要获取订单数据,请参见下面的链接
2) 你也可以使用wordpress
WP_Query
:要获取订单数据,请参见下面的链接
3) 您可以使用sql查询
您将能够从
WC_Order
对象,如中所述:如何获取订单详细信息
在woocommerce 3中获取订单项目和wc\订单项目\产品
将数据显示为表中的列表
要在列表中显示订单,您应该查看不推荐使用的模板myaccount/my-orders.php或myaccount/orders.php模板…
它会给你一个模型…
u4vypkhs2#
只要是最后执行的查询,就可以使用
$wpdb->last_query
获取最后一个查询。你需要define('SAVEQUERIES', true)
在你的wp-config.php
为了这个