2 ways to list WooCommerce orders in the front end (with plugins or code)

List WooCommerce Orders Front End

WooCommerce hides order data in the WordPress admin by default, but many businesses need to display this information on the front end. Whether you're creating dashboards for delivery drivers, providing vendors with their sales data, or building custom inventory management systems, you need a way to list WooCommerce orders.

The standard WooCommerce setup only shows customers their own orders through the My Account page. It doesn't provide any built-in method to display all orders or create custom order views on your website's front end.

This creates challenges for businesses that need to:

  • Give staff members access to order data without WordPress admin privileges.
  • Display order information to delivery partners or fulfillment teams.
  • Create vendor-specific order views for multi-vendor marketplaces.
  • Build custom reporting dashboards for different user roles.
  • Implement front-end inventory management systems.

This guide covers two proven methods to list WooCommerce orders on the front end. The first uses Posts Table Pro, a plugin solution that requires no coding. The second uses the wc_get_orders() function for developers who need custom implementations.

Both methods let you display comprehensive order information including customer details, shipping addresses, payment data, and order status. You'll learn how to create filtered views, implement security measures, and customize the display to match your exact requirements.

What is Posts Table Pro?

Posts Table Pro is a WordPress table plugin that lists any WordPress content in a structured HTML table, including WooCommerce orders.

Posts Table Pro is developed and supported by us at Barn2. It displays pages, posts, custom post types, and WooCommerce order lists in organized tables.

The plugin includes dozens of configuration options. You can select which columns of order data to display. You can control how the table is sorted. You can customize the search functionality and filtering options.

Posts Table Pro differs from our WooCommerce Product Table plugin. WooCommerce Product Table lists standard WooCommerce products in a table format. Posts Table Pro handles WooCommerce orders, which are stored as separate custom post types. This distinction makes Posts Table Pro the correct choice for displaying order lists.

This tutorial covers two methods: listing all WooCommerce orders in the front end and showing orders for specific customers only.

Which solution should you use for WooCommerce orders?

This comparison table helps you choose the right solution based on your technical skills and requirements for displaying WooCommerce orders:

Feature Posts Table Pro WooCommerce Product Table Native WooCommerce Custom wc_get_orders() code
Purpose Display orders, posts, and custom post types Display products only Basic customer order history Custom order displays
Can display orders ✅ Yes ❌ No ✅ Limited (customer's own only) ✅ Yes
Technical skills required None None None PHP development
Setup time 5-10 minutes 5-10 minutes Already included 1-3 hours
Customization options Extensive (via settings) Extensive (via settings) Very limited Unlimited (requires coding)
Front-end display ✅ Yes ✅ Yes ✅ Yes (My Account only) ✅ Yes
Admin display ❌ No (use native) ❌ No (use native) ✅ Yes ✅ Possible
Show all orders ✅ Yes ❌ No ❌ No ✅ Yes
Filter by status ✅ Yes N/A ❌ No ✅ Yes
Filter by customer ✅ Yes (with setup) N/A ✅ Automatic (logged-in user) ✅ Yes
Search functionality ✅ Yes ✅ Yes ❌ No ✅ Can implement
Sortable columns ✅ Yes ✅ Yes ❌ No ✅ Can implement
Export options ✅ Yes ✅ Yes ❌ No ✅ Can implement
Responsive design ✅ Yes ✅ Yes ✅ Yes Depends on implementation
HPOS compatibility Requires compatibility mode N/A ✅ Full support ✅ Full support
Maintenance required Plugin updates only Plugin updates only None Code maintenance needed
Support available ✅ Professional support ✅ Professional support ✅ WooCommerce support ❌ Self-supported
Cost Paid plugin Paid plugin Free Development time/cost
Best for Non-technical users needing full order management Product catalog displays Basic customer order history Developers needing custom solutions

Key takeaways:

  • Use Posts Table Pro when you need to display WooCommerce orders on the front end without coding
  • Use WooCommerce Product Table for product displays only - it cannot show orders
  • Use native WooCommerce when customers only need to see their own order history
  • Use custom wc_get_orders() code when you need highly specific functionality and have PHP development skills

How to list WooCommerce orders in a table on the front end

Step 1. Create the table of orders

List WooCommerce Orders Plugin

Follow these steps to create an instant table listing WooCommerce orders:

  1. First, get the Posts Table Pro plugin.
  2. Upon installing the plugin, you will be prompted with an automatic setup wizard to help you create your first table.
  3. Provide a name for your table. Select "Shop orders" as your custom post type. Choose which posts or product pages to include in the table. Available options include posts, pages, and custom post types.
  4. Customize your table's appearance by selecting columns and their display order. To add a new column, choose the column type from the dropdown menu and click "Add."
  5. Configure sorting options by selecting the default sorting method and sort direction. This controls the order in which WooCommerce orders appear in your list.
  6. Navigate to Post Tables → Settings. Find the "Links" option and enter "none". This prevents orders from being clickable, which is necessary because WooCommerce doesn't provide individual front-end order pages to link to.

Essential columns to Include in your WooCommerce order list with Posts Table Pro:

    • ID - rename this column to "Order ID".
    • Date
    • Shipping first name - Add this as a custom field column, enter _shipping_first_name as the custom field name, and rename the column to "First Name".
    • Shipping last name - Add this as a custom field column, enter _shipping_last_name as the custom field name, and rename the column to "Last Name".
    • Shipping address 1 - Add this as a custom field column, enter _shipping_address_1 as the custom field name, and rename the column to "Address 1".
    • Shipping city - Add this as a custom field column, enter _shipping_city as the custom field name, and rename the column to "City".
    • Postcode - Add this as a custom field column, enter _shipping_postcode as the custom field name, and rename the column to "Postcode".
    • Phone - Add this as a custom field column, enter _shipping_postcode as the custom field name, and rename the column to "Phone".
    • Total - Add this as a custom field column, enter cf:_order_total as the custom field name, and rename the column to something like "Total ($)".

Quick reference: all available WooCommerce order fields

This quick reference lists all available WooCommerce order fields you can display in Posts Table Pro. Each field requires creating a custom field column with the specified field name:

Field category Field description Custom field name
Customer data Customer IP address _customer_ip_address
Customer browser/OS _customer_user_agent
Order creation method _created_via
Billing information Complete billing address _billing_address_index
Billing first name _billing_first_name
Billing last name _billing_last_name
Billing company _billing_company
Billing email _billing_email
Billing phone _billing_phone
Billing country _billing_country
Billing address line 1 _billing_address_1
Billing address line 2 _billing_address_2
Billing city _billing_city
Billing state _billing_state
Billing postcode _billing_postcode
Shipping information Complete shipping address _shipping_address_index
Shipping first name _shipping_first_name
Shipping last name _shipping_last_name
Shipping company _shipping_company
Shipping country _shipping_country
Shipping address line 1 _shipping_address_1
Shipping address line 2 _shipping_address_2
Shipping city _shipping_city
Shipping state _shipping_state
Shipping postcode _shipping_postcode
Payment information Order currency _order_currency
Prices include tax _prices_include_tax
Payment method code _payment_method
Payment method title _payment_method_title
Order total _order_total
Shipping cost _order_shipping
Total discount _cart_discount
Payment date _date_paid
Payment date (formatted) c_paid_date
Tax information Total tax _order_tax
Shipping tax _order_shipping_tax
Tax discount _cart_discount_tax
Order status Transaction ID _transaction_id
Completion date _date_completed
Completion date (formatted) _completed_date

Step 2. Ensure Posts Table Pro can display your WooCommerce orders

WooCommerce versions 8.2 and later store order data differently. Posts Table Pro requires compatibility mode to access this data. Sites created before WooCommerce 8.2 already have orders stored in the compatible format and can skip this step.

For newer sites, enable compatibility mode:

  1. Navigate to WooCommerce → Settings → Advanced → Features
  2. Under Order data storage, tick the Enable compatibility mode checkbox

Compatibility mode forces WooCommerce to use pre-HPOS data storage methods. This may impact performance on high-traffic sites. Test thoroughly before implementing on production sites. This requirement exists because Posts Table Pro currently reads from the traditional WordPress database structure.

WooCommerce compatibility mode HBOS

What else can I list in the table of WooCommerce orders?

The WooCommerce order table supports numerous data columns beyond the basic examples provided. You can add any column that matches your inventory management needs through the table builder's Columns page.

Order status

Order status displays the current processing state of each order. Add a "status" column to include this information in your WooCommerce order list.

Order meta fields

WooCommerce stores extensive order metadata in the wp_postmeta database table. Each meta field can become a table column by creating a custom field column and entering the corresponding field name:

  • Customer IP address - _customer_ip_address
  • Customer's browser and operating system - _customer_user_agent
  • Order creation method - _created_via
  • Billing details:
    • Complete billing information - _billing_address_index
    • Billing first name - _billing_first_name
    • Billing last name - _billing_last_name
    • Billing company name - _billing_company
    • Billing email address - _billing_email
    • Billing phone number - _billing_phone
    • Billing country - _billing_country
    • Billing address line 1 - _billing_address_1
    • Billing address line 2 - _billing_address_2
    • Billing city - _billing_city
    • Billing state - _billing_state
    • Billing postcode - _billing_postcode
  • Shipping details:
    • Complete shipping information - _shipping_address_index
    • Shipping first name - _shipping_first_name
    • Shipping last name - _shipping_last_name
    • Shipping company name - _shipping_company
    • Shipping country - _shipping_country
    • Shipping address line 1 - _shipping_address_1
    • Shipping address line 2 - _shipping_address_1
    • Shipping city - _shipping_city
    • Shipping state - _shipping_state
    • Shipping postcode - _shipping_postcode
  • Order payment data:
    • Currency - _order_currency
    • Tax inclusion status - _prices_include_tax
    • Payment method code - _payment_method
    • Payment method name - _payment_method_title
    • Total order cost - _order_total
    • Shipping cost - _order_shipping
    • Total discount - _cart_discount
    • Payment date - _date_paid
    • Payment date (formatted) - c_paid_date
  • Tax information:
    • Total tax - _order_tax
    • Shipping tax - _order_shipping_tax
    • Tax discount - _cart_discount_tax
  • Transaction ID - _transaction_id
  • Order status data:
    • Completion date - _date_completed
    • Completion date (formatted) - _completed_date

This comprehensive list serves as a reference for WooCommerce database fields. These fields enable detailed order tracking and reporting through your front-end tables.

List WooCommerce orders based on their status

Order status filtering allows you to display specific order types like completed, pending, or refunded orders in separate tables.

Posts Table Pro can filter orders by their current status. Configure this using the status parameter in your table shortcode.

Available status codes:

  • Completed orders - wc-completed
  • Orders pending payment - wc-pending
  • Payment processing - wc-processing
  • On hold orders - wc-on-hold
  • Cancelled orders - wc-cancelled
  • Refunded orders - wc-refunded
  • Failed payment - wc-failed

Example shortcode for completed orders only:

[posts_table_template="1" status="wc-completed" links="none"]

Other options to customize your list of WooCommerce orders

Posts Table Pro provides extensive customization options for WooCommerce inventory management. Beyond column selection, you can configure sort order, search functionality, pagination, and display elements.

Column names can be customized to match your requirements. The column heading documentation explains how to rename any WooCommerce order table column.

The plugin knowledge base contains detailed documentation for all available configuration options.

WooCommerce doesn't create front-end order pages. Posts Table Pro's default links point to non-existent pages. The solution is disabling all links in your order table as shown in the setup instructions.

Custom code can create links to admin Edit Order pages. This requires PHP development skills. For professional implementation, consider hiring a WordPress expert through Codeable.

Can I list the products for each order?

Product listings within individual orders aren't accessible through Posts Table Pro. WooCommerce stores this data in a format the plugin cannot display directly.

Access individual order product lists through the WordPress admin:

  1. Copy the Order ID from your front-end order table
  2. Navigate to [your-domain]/wp-admin/post.php?post=12345&action=edit (replace 12345 with your Order ID)

This method provides direct access to the Edit Order screen containing complete product information.

Don't forget customer confidentiality!

List WooCommerce orders securely
Customer data protection is essential when displaying WooCommerce orders on the front end. Always implement appropriate security measures.

WooCommerce restricts front-end order display by default because order information contains confidential customer data.

Legitimate use cases exist for front-end order displays. Delivery drivers may need order access without admin privileges. Administrative and finance staff might require order visibility through dedicated interfaces. These scenarios benefit from controlled front-end WooCommerce inventory management.

Essential security measures include:

  • Implementing SSL certificates for encrypted data transmission
  • Using password-protected pages for order lists
  • Restricting access to authorized personnel only
  • Regular security audits of your implementation

Can customers see a front-end list of their own orders?

WooCommerce includes built-in customer order visibility. The 'My Account' page displays order history for logged-in customers. No additional plugins are required for this basic functionality.

The [my_orders] shortcode displays customer orders anywhere on your site. Users must be logged in to view their order history through this shortcode.

Posts Table Pro becomes necessary when displaying all orders or creating custom filtered views beyond individual customer orders.

Can customers see a list of their own orders?

Displaying user-specific orders requires additional configuration. WooCommerce doesn't store customer details as taxonomies on the 'shop_order' post type. This limitation requires workarounds for customer-specific order displays.

Multi-vendor sites particularly benefit from vendor-specific order views. Each vendor can access their order table or report without seeing other vendors' data.

Two implementation approaches exist: manual configuration for non-technical users and automated solutions for developers.

Option 1 - Create a hidden page for each customer listing their orders

  1. Create a hidden page for each customer. Apply password protection to each page.
  2. Create a custom taxonomy named 'Customer'. Tag each order with the appropriate customer username or ID.
  3. Configure Posts Table Pro on each page. Select "Custom taxonomy" when choosing posts to include. Choose the term matching the individual customer.
  4. Send customers their unique page link and password.
  5. Repeat this process for all customers requiring front-end order access.

Option 2 - Automated solution

Developers can implement this automated approach:

  1. Create a custom taxonomy on 'shop_order' post type. Configure automatic population with order placer's username.
  2. Modify the WooCommerce Account page template. Replace the default order list with a Posts Table Pro shortcode.
  3. Update the shortcode to reference your custom taxonomy slug.
  4. Dynamically populate the taxonomy term with the current user's username.

This implementation creates an automated table displaying user-specific orders on the WooCommerce Account page.

How to use wc_get_orders() to get WooCommerce orders

The wc_get_orders() function is a PHP method for programmatically retrieving and displaying WooCommerce orders on your site's front end.

Developers can use the wc_get_orders() function to fetch order data programmatically. This approach enables custom dashboards and reports with complete control over data presentation.

Step 1: Understand the wc_get_orders() function

wc_get_orders() retrieves orders based on specified criteria. Filter options include date ranges, order status, customer ID, and custom parameters. The function returns an array of order objects for processing.

Step 2: Add the PHP snippet

To display orders on the front end, add this PHP snippet to your child theme’s functions.php file or a custom plugin:

function display_woocommerce_orders() {
    $orders = wc_get_orders(array(
        'limit' => 10, // Number of orders to fetch
        'status' => 'completed', // Filter by order status
        'orderby' => 'date',
        'order' => 'DESC',
    ));

    if (!empty($orders)) {
        echo '<table class="woocommerce-orders-table">';
        echo '<tr><th>Order ID</th><th>Customer</th><th>Total</th><th>Date</th></tr>';

        foreach ($orders as $order) {
            $order_id = $order->get_id();
            $customer_name = $order->get_billing_first_name() . ' ' . $order->get_billing_last_name();
            $order_total = $order->get_total();
            $order_date = $order->get_date_created()->format('Y-m-d');

            echo "<tr>
                <td>#{$order_id}</td>
                <td>{$customer_name}</td>
                <td>\${$order_total}</td>
                <td>{$order_date}</td>
            </tr>";
        }

        echo '</table>';
    } else {
        echo '<p>No orders found.</p>';
    }
}

add_shortcode('display_orders', 'display_woocommerce_orders');

Step 3: Display the orders

Display orders on any page using this shortcode:

[display_orders]

Step 4: Customize the output

Our example pulls completed orders, but you can adjust the wc_get_orders() parameters to retrieve orders by:

  • Order status - Use values like processing or on-hold
  • Customer ID - Filter by specific customer using customer_id => 5
  • Date range - Set date parameters like date_created => '>=2024-01-01'
  • Payment method - Filter by payment gateway used
  • Shipping method - Filter by shipping option selected

wc_get_orders() provides complete flexibility for custom order displays. Posts Table Pro remains the preferred solution for users seeking code-free implementation with built-in filtering and sorting controls.

Over to you!

You now have comprehensive instructions for listing WooCommerce orders in front-end inventory management systems. Get Posts Table Pro and configure your order display today!

Share your implementation details in the comments. What columns do you display? How do you use front-end order lists? What security measures protect your customer data? Your experiences help other store owners optimize their WooCommerce inventory management.

52 Comments

  1. You guys used to write brilliant and clear articles. This one is not one of them: E.g. "In this example, we'll choose "Shop orders" as our custom post type. Next, you can choose the posts or product pages you wish to include in the table. You can select from a range of options, including posts, pages, and custom post types." No "Shop orders" custom post type shows up in the dropdown list. What do you mean be select a range of options? I got stuck right there at the beginning. But what about the table displayed toward the end of the article? Has nothing to do with orders(?).

    • Hi, John. I'm sorry to hear you're having difficulty with the WooCommerce "Shop orders" post type not displaying in the dropdown for selecting the type of content you want to display when creating a table in the Table Builder. Thanks for letting us know so we can help sort it out. So that we can assist you with this best and provide you with full support as quickly as possible, please could you submit a request via our Support Center together with your plugin license key. Many thanks.

  2. Hi, i am looking for this plugin to list user whom have purchased the item and list them out in the front end on the specific product page. It's like a purchase history that is visible to all user. Am i able to use the posts_table with product_id together and display the purchase history front end? Thanks

    • Hi, Weng Seng. Thanks for asking. I'm afraid listing users and the products they've purchased isn't a function of any of our plugins. If you are unable to find a plugin that allows you to do this specifically, you or your developer might need to implement this via a customization, coding, or custom plugin. If you're unfamiliar with this and don't have a developer who can do this for you, then I recommend that you post a job on Codeable where their pre-approved WordPress experts will send you a quote. Thanks!

  3. Hello, is it possible to list the woocommerce ordes of each user and the products they bought? I see the table lacks the products ordered in each sale. Thank you

  4. Is there any way to show individual product orders to front-end instead of all orders.
    i mean, i want to show just one product orders details on front-end.

    • Hi, Pradip. Thanks for asking. Yes, you can list specific products previously purchased by the customer following the instructions in this article: Choose which types of product to include. Hope this helps. Should you have any other questions/concerns, kindly fill up a form at our Support Center so we can get back to you much sooner.

  5. Dear sir, Can you please tell me how can insert a list of buyers of a product in the product page with your plugin?
    Thanks.

    • Hi, Cesar. Thanks for asking. Here's what our plugins allow you to do:

      You can use Posts Table Pro (mentioned in this article) to list your WooCommerce orders in the front end of your site.
      You can use WooCommerce Product Table (see our other article) to display WooCommerce products previously purchased by current user.

      For what you're asking, to show a list of users who have bought or purchased a product, I'm afraid you'll have to search for and use a different plugin that has this feature.

  6. Hello, can I use your plugin to only list a purchase history of s particular product category?
    If so how?

  7. Hi,
    I'm using your Posts Table plugin to display all my orders on one page. Products use addons so clients can write a message and add image to a product order.

    It's possible to display that custom message? In database it's saved on woocommerce_order_itemmeta

    • Hi, Dragos. Thanks for using Posts Table Pro! So that we can assist you best by pulling up your Barn2 Account to provide you with product support, please could you go to our Support Center and submit your concern in a support request using the email address that you used to purchase the plugin or your License key. Thanks!

  8. Hi,
    Is it possible to show orders by role? I am working with sales agents and every agent had customers which are divided by a custom role. So I want to show only the orders that have as a role "customer-1".

    Thank you,
    Olga

    • Hi Olga,

      Thanks for your comment and interest in our Posts Table Pro plugin.

      You can literally only do what is described in this article due to the way WooCommerce stores information about orders. I have added it to our feature request list so that we can track the amount of demand for it. We will let you know if we add this to a future version of the plugin.

      Posts Table Pro can display any custom fields or taxonomies that are stored against the shop orders post type. As an alternative, you or your developer can create a custom taxonomy on that post type and write some custom code to automatically store the role of the customer associated with the order as a taxonomy term. Then, you could use the 'term' option in Posts Table Pro to list orders for customers with a specific role only.

      I hope this helps. Should you have any other questions/concerns, kindly fill up a form at our Support Center so we can get back to you much sooner.

      • Hi Jae,

        Thank you for your extended reply.
        I will try to do what you said and try to add the role to the order. Great idea, thank you.

        Best,
        Olga

        • Hello, Olga. Thanks for getting back to us. I'm glad we could help and hope this goes well for you.

          Should you have any other questions, just let us know! Best regards and keep safe.

  9. Hey,

    I found your plugin, and I would need some guindance if it suits our needs:

    We are building a website with WooCommerce, where our client is selling trainings. They would like to get all the orders into one list.

    We will create some additional fields for product options, and these info should be on the list as well. Every training should be able to get to separate list.

    I hope you understand, waiting to hear your response!

    • Hi, Ryan. Thanks for the screenshot.

      Posts Table Pro displays on the front-end of your site and the links required for the type of buttons you're asking about would need to point to the back-end "Edit Order" page of your site. While this is beyond what the plugin is designed to do, you can achieve this via custom code if you or your developer know how. For more details about this, please see: WooCommerce inventory management: Can I link to the individual order?

      If you don't have a developer who can do this for you or would like developer-level assistance to do this, then I recommend that you post a job on Codeable where their pre-approved WordPress experts will send you a quote.

  10. Can I have export buttons like in other datatable plugins? for example: a button to download CSV file?

    • Hi, Matt. Our plugin allows you to display/list/show your WooCommerce orders in the front end of your website. To export this data, you can use a WooCommerce order export plugin, which has a feature that allows you to display an export button in the front end. Thanks.

  11. Can I print the results of a query, or must I seek the services elsewhere?

    • Unfortunately, it's not possible to print query results from using the search box. To do that, you would need to use the options that come with WooCommerce Product Table to refine the orders displayed (See Choosing which products appear in the table), and then simply use the Edit -> Print function in your browser to print the current page, and that will only print the products that appear in the table when it first loads.

  12. How many filters can you apply, and can the filters be used with custom "meta" columns?

    • You can add as many filter dropdowns as you like above the table. Posts Table Pro supports filters for categories, tags and any custom taxonomy, but of course you can only create filters for information that are used for the orders post type created by WooCommerce.

  13. Hi, I already bought this plugin, I just want to ask, how to display the name of the product that has been ordered. Thank you.

    • Hi Alessandro, you can find advice about the best way to do this in the 'Can I list the products for each order?' section of the above article.

  14. I'm currently using the plug-in and have two questions:
    1. We are using custom order numbers (via Custom Order Numbers for WooCommerce). Is there a way to show that information in the table?

    2. I understand linking to the view order page for the customer takes custom programming. Can you point me to any documentation, or to the right file, where this program would need to take place?

    Much thanks,
    Yvonne

    • Hi Yvonne.

      1. You would need to check how the Custom Order Numbers plugin stores the custom order numbers. If it's a custom field attached to the 'Orders' post type then you will be able to use these instructions to list them in the table.

      2. Unfortunately we haven't done this piece of work ourselves, so I don't have any information about how to do it that I could give you. If you don't have a developer who can do this for you, then I recommend that you post a job on Codeable where their pre-approved WordPress experts will send you a quote. We have partnered with them to provide plugin customizations for our customers.

        • Hello there
          Can you please tell me how did you managed to figure out #2

          Thanks in advance

  15. Hello Katie!

    Can you tell me if this plugin will allow me to not show any orders until I submit a search query?

    We have a customer service staff that it'd be best if not ALL of the orders were immediately available to them.

    For instance, a search bar that if a customer calls up, they can say "Hey my name is Firstname Lastname, and I placed an order, and I was wondering if it shipped yet."

    Then, the customer service person can type in "Lastname" and see any orders with that last name, and I'll put in the field for tracking info".

    Is that possible?

    • Hi Matthew, unfortunately the search box only looks within the contents of the table and it's not possible to search before the products load.

      • Hello Katie,

        So, for clarification, if I have 14k orders, I have to list all of them.

        On your screencap example, you have something that says "display 25 entries", and at the bottom it says "Showing 1-7 of 7 entries*.

        So, If someone were to say... have 26 orders, and it was set to display 25 entries, and someone ran a search, it would only search the 25?

        I guess I don't understand the purpose of the plugin, then perhaps.

        If I have it set to display 25 orders, but I have 100 orders total, if I wanted to search them all, it would only search the top 25?

        Can you please explain? Because having 14k orders listed on the page would definitely slow it down.

        Thanks!

        • Hi Matthew, to be honest this is not the main purpose of the plugin - it's a fringe use case and Posts Table Pro is mostly used to list other types of information such as pages, posts or documents. This tutorial is about how to use Posts Table Pro to list WooCommerce orders because some people use it for that. It's not ideal as I mentioned in the article, so you need to read it carefully to make sure it's suitable. For example, you can't display orders for a specific user only - which means it may not be what you're looking for. People tend to use it to provide a front end way for their colleagues (who may not have admin access) to view orders, e.g. kitchen staff in a restaurant might use it on a password protected page.

          To answer your question more specifically - you can choose how many rows to include on each page of the table (the default is 25). Regardless, the search box will always look for ALL the orders in the table - not just the first 25.

          It sounds like I misunderstood your previous question - I thought you wanted to limit the total number of orders in the table, but I now realise that you just want to limit how many appear on each page, which is fine and won't affect the searching.

          So you can list 14k orders in a single table and if you use the lazy load option, then only the first 25 (or however many you choose to display per page) will ever load at one time. That's why it won't slow it down.

      • Hey Katie,

        I guess then I'm not sure if I understand the purpose of the plugin.

        Can I limit it to only show 5 orders at a time or something that doesn't display the 14k orders that I have in my system?

        Similarly, if I only show 10 orders at a time, when I do a search, will it search only those 10 items that default, or will it search all 14k orders, and give me the 10 options that match my query?

        Thank you!

        This might be the closest thing to what I need.

        • Hi Matthew, you can use the post limit option in the plugin to just show 5 orders at a time. However when you search the table, it will only look for the orders that you are actually displaying. So it might be best to enable the lazy load option which allows you to list all 14k orders without performance problems - that way, the search will look at ALL orders.

  16. With this plugin is it possible that my clients (Registered people who buy on my website) have a report of their purchases per product (totals), not per order, in x period?
    Thank you

    • Hi Carlos, unfortunately it's only possible to list the information mentioned in this tutorial. It's pretty restrictive due to the way that WooCommerce stores information about orders.

  17. Hello,
    Is it possible to list in one page orders from a bilingual site? In other words to display orders that where made in English and French store together.

    Thanks

    • Hi Yannis, it depends on which multi-lingual plugin you are using. If they are stored in the same database table then you should be able to list them in a single table on the front end, although I haven't tested this.

  18. Hi,
    I am using the [my_orders] shortcode but it is not working..

    • Hi Junami, that's strange as this shortcode is part of WooCommerce itself. You would need to contact woocommerce.com support if it's not working on your site.

  19. Hi there,
    I have a pre-sales question. Is it possible to also include the order action buttons on the front end (to mark the orders as "Complete" or "Cancelled")? So that the order status can be changed without having to go into the back end?

    Thanks.

    • Hi Daniel, I'm afraid this isn't possible (although you could probably do it via some extra coding if you know how to). You can only display the information mentioned in this tutorial.

    • Hi Muhammad, unfortunately this isn't possible because WooCommerce doesn't store the customer against the order in a way that Posts Table Pro can display.

  20. Katie Keith, Thanks for sharing this interesting tutorial but can you guide me how can i display the customer order information from orders as i have implemented some steps define in the tutorial https://www.wpblog.com/display-woocommerce-customer-order-details/ but i have been some where stuck in this code. Can you guide me on this

    add_action( ‘woocommerce_admin_order_data_after_billing_address’, ‘blog_anothermethod_display’);
    function blog_anothermethod_display( $order ){
    $order_id =43;
    $order_meta = get_post_meta($order_id);
    print(“”);
    print_r($order_meta);
    print(“”);
    }

    • Hi Alexander, I'm sorry but I can't help you with this. If you don't have a developer who can do this for you then I recommend that you post a job on Codeable - they have lots of excellent developers who specialize in this sort of customization.

Please share your thoughts...

Your email address will not be published. Required fields are marked *