2 ways to list WooCommerce orders in the front end (with plugins or code)
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 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

Follow these steps to create an instant table listing WooCommerce orders:
- First, get the Posts Table Pro plugin.
- Upon installing the plugin, you will be prompted with an automatic setup wizard to help you create your first table.
- 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.
- 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."
- Configure sorting options by selecting the default sorting method and sort direction. This controls the order in which WooCommerce orders appear in your list.
- 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:
- Navigate to WooCommerce → Settings → Advanced → Features
- 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.

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
- Complete billing information -
- 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
- Complete shipping information -
- 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
- Currency -
- Tax information:
- Total tax -
_order_tax
- Shipping tax -
_order_shipping_tax
- Tax discount -
_cart_discount_tax
- Total tax -
- Transaction ID -
_transaction_id
- Order status data:
- Completion date -
_date_completed
- Completion date (formatted) -
_completed_date
- Completion 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
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 inventory management: Can I link to the individual order?
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:
- Copy the Order ID from your front-end order table
- 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!

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
- Create a hidden page for each customer. Apply password protection to each page.
- Create a custom taxonomy named 'Customer'. Tag each order with the appropriate customer username or ID.
- Configure Posts Table Pro on each page. Select "Custom taxonomy" when choosing posts to include. Choose the term matching the individual customer.
- Send customers their unique page link and password.
- Repeat this process for all customers requiring front-end order access.
Option 2 - Automated solution
Developers can implement this automated approach:
- Create a custom taxonomy on 'shop_order' post type. Configure automatic population with order placer's username.
- Modify the WooCommerce Account page template. Replace the default order list with a Posts Table Pro shortcode.
- Update the shortcode to reference your custom taxonomy slug.
- 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
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
oron-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
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.
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!
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
Hi, German. Thanks for your interest in Posts Table Pro, which you can use to list or display WooCommerce orders in a dynamic table on the front-end of your site.
For what you'd like to achieve, I suggest that you instead consider using our other plugin, WooCommerce Product Table, which allows you to display WooCommerce products previously purchased by current user.
I hope this helps. Please let me know if you have any more questions. You can also get in touch with us via our dedicated Support Center. Thanks!
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.
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.
Hello, can I use your plugin to only list a purchase history of s particular product category?
If so how?
Hi, John. Thanks for your interest in Posts Table Pro, which allows you to list the WooCommerce Orders in a table on your site's front-end.
For what you would like to achieve, you should instead use our other plugin, WooCommerce Product Table, which you can use to display WooCommerce products previously purchased by current user. You can then use the category option to display only the products from a particular category or subcategory.
I hope this helps. Please let me know if you have any other questions. You can also enquire via our dedicated Support Center. Thanks!
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!
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.
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!
Hello there! I'm glad you found it. You can store additional product fields/options by adding them as either Custom Fields or Custom Taxonomies to the WooCommerce "product" post type on your site. You can then display these as Custom field columns or Custom taxonomy columns in the posts table in the front-end of your site.
I hope this makes sense. Let me know if you have any other questions via our Support Center. Thanks!
Hi,
Can we display the action like view the order or download the PDF invoice/PL on woocommerce order front end? Please see screenshot https://prntscr.com/r4wfwl
Thank you!
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.
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.
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.
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.
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.
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.
Thanks, Katie. I figured out #2 and am working on #1.
Hello there
Can you please tell me how did you managed to figure out #2
Thanks in advance
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.
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.
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.
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.
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.
Hello,
Can you please tell me how can i show specific customer orders in datatable at Front end ?
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.
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.