in woocommerce, is there a shortcode/page to view all orders? in woocommerce, is there a shortcode/page to view all orders? wordpress wordpress

in woocommerce, is there a shortcode/page to view all orders?


My Account shortcode:

[woocommerce_my_account order_count="-1"]

Shows the ‘my account’ section where the customer can view past orders and update their information. You can specify the number or order to show, it’s set by default to 15 (use -1 to display all orders.)

Reference: Woocommerce Shortcodes


Update

If you need only the orders I don't know if there's already a shortcode, but I made one taking woocommerce_my_account as example:

function shortcode_my_orders( $atts ) {    extract( shortcode_atts( array(        'order_count' => -1    ), $atts ) );    ob_start();    wc_get_template( 'myaccount/my-orders.php', array(        'current_user'  => get_user_by( 'id', get_current_user_id() ),        'order_count'   => $order_count    ) );    return ob_get_clean();}add_shortcode('my_orders', 'shortcode_my_orders');

Add this to your functions.php file and then use it like [my_orders order_counts=10] (order_counts is optional, if missing it lists all the orders).


I was reading about extract and apparently its not recommended by Wordpress anymore. I found this soloution, hope this helps:

function shortcode_my_orders( $atts ) {$args= shortcode_atts( array(    'order_count' => -1    ), $atts);$order_count = esc_attr( $args['order_count'] );ob_start();wc_get_template( 'myaccount/my-orders.php', array(    'current_user'  => get_user_by( 'id', get_current_user_id() ),    'order_count'   => $order_count) );return ob_get_clean();

}