Allanchik's Order Filter for WooCommerce

Description

Find every WooCommerce order that contains a product, straight from the Orders screen, and narrow it down by as many criteria as you need.

Type a product name, SKU or ID, pick one or more products and click Filter. The orders list shows only the orders that contain them, with a column listing the matched items and quantities and a summary line with totals.

Filter orders by

  • Product name, SKU or product ID
  • Variation: pick the exact variation, or the parent product to match all of its variations
  • Category, tag or brand
  • Orders that contain the products, orders that contain all of them together, orders that contain nothing else, or orders that do not contain them
  • Order status, several at once: processing and on hold together, for example, either listed or left out (“status is” / “status is not”)
  • Minimum and maximum quantity: of a picked product, or of the whole order when no product is picked, to find bulk buyers or single-item orders
  • Payment method, shipping method, customer role (guests included), billing country and an order total range, in a “More Filters” row that stays out of the way until you open it

See at a glance

  • Matched items and quantities in each order row
  • Summary line: how many orders, how many units, how many still unfulfilled
  • Per product breakdown when you filter by a category or by several products

Do something with it

  • Export the filtered orders to CSV, with the columns you choose: order details, billing and shipping addresses, phone, email, matched items and SKUs, quantities, totals
  • Use the normal bulk actions on the filtered set (mark as completed, print invoices with your invoice plugin, and so on)
  • Jump from a product to its orders in one click, from the Products list, the product edit screen or a line item on an order
  • The filter stays on when you switch status tabs or pages

Fits in

  • Works with High-Performance Order Storage (HPOS) and the classic posts storage
  • Uses the built-in WooCommerce product search, so it looks and feels native
  • Nothing to configure. The extras can be switched off under WooCommerce > Order Filter
  • One small file, no external calls, no tracking, no data changes

Typical uses

  • Fulfil all orders for one product at once
  • Contact everyone who bought a product: recall, restock notice, follow-up
  • Check how many units of a product are still waiting to ship
  • Pull every order with a specific SKU or variation for a supplier
  • Find customers who bought a product in bulk

Installation

  1. Install from Plugins > Add New, or upload the plugin folder to /wp-content/plugins/.
  2. Activate it. WooCommerce must be active.
  3. Go to WooCommerce > Orders. The filter sits next to the date and customer filters.
  4. Optional: switch extras on or off and choose the CSV columns under WooCommerce > Order Filter.

FAQ

How do I find all orders containing a specific product?

On WooCommerce > Orders, type the product name, SKU or ID in the product box, pick it and click Filter.

Can I filter WooCommerce orders by SKU?

Yes. The product search matches SKUs, so type the SKU and pick the product it belongs to.

Can I filter orders by variation?

Yes. Pick the variation itself to match only that one, or the parent product to match all of its variations.

Can I filter orders by category, tag or brand?

Yes. Pick one in the category / tag / brand dropdown. Child categories are included. Brands use the WooCommerce brand taxonomy; other brand plugins can be added with the aofbp_term_taxonomies filter.

Can I find orders that contain two products together?

Yes. Pick both products and set the mode to “Contains all of”. The order has to hold every picked product, whatever else is in it. A parent product counts as held when any of its variations is; a variation only counts as itself.

Can I find orders that contain only one product and nothing else?

Yes. Pick the product and set the mode to “Only contains”. Every line item in the order then has to be that product (or one of the products you picked).

Can I find orders that do not contain a product?

Yes. Set the mode to “Does not contain”.

Can I filter by more than one order status?

Yes. The status box next to the product search takes several statuses at once, for example processing and on hold, which the status tabs above the list cannot do. Set the dropdown in front of it to “Status is not” to list every order except those statuses instead. Picking statuses there replaces the tab; clicking a tab clears the box again.

Can I find bulk orders without picking a product?

Yes. Leave the product box empty and set Min QTY: the list shows every order holding at least that many items in total, with the per-product breakdown above it. With a product picked, the range applies to that product’s quantity in the order instead (variations added together). With “Contains all of”, every picked product has to be inside the range.

Can I filter by payment method, shipping method or country?

Yes. Click “More Filters” next to the product box. The row that opens has payment method, shipping method, customer role, billing country and an order total range. They work on their own, for example every cash-on-delivery order, or together with the product filter, for example every order with a given product billed to the US. The summary line and the CSV export follow them too.

Deposit and partial-payment plugins record the gateway on the payment sub-orders rather than on the order itself; the payment method filter and the CSV column look there too, so a deposit paid by card counts as a card order.

Can I find orders between two amounts?

Yes. Open “More Filters” and fill in the order total range, for example 100 to 500. Leave one end empty for “at least” or “at most”.

What is the customer role filter?

The WordPress role of the customer’s account: customer, subscriber, or the roles that wholesale and membership plugins add. “Guest” finds orders placed without an account.

Does it work with HPOS (High-Performance Order Storage)?

Yes, with HPOS on or off, and with sync enabled.

Can I export the filtered orders?

Yes. Click Export CSV next to the filter. The file contains what the list shows (product filter, statuses, month, sales channel and customer filters) with the columns chosen under WooCommerce > Order Filter, from order number and matched items to full shipping addresses and phone numbers.

Does it change any order data?

No. It only filters what is shown and what is exported. The only thing it stores is its own settings, which are removed when you delete the plugin.

Does it slow down the orders screen?

No. One extra query runs only while a filter is active.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Allanchik's Order Filter for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.3.0

  • Order status filter: pick several statuses at once, next to the product search.
  • “Only contains” mode finds orders made up of nothing but the picked products. “Contains any of” is now simply “Contains”; “Contains all of” and “Does not contain” stay as they were.
  • Maximum quantity box next to the minimum one.
  • The filter controls match the height and spacing of the WooCommerce ones, and the quantity boxes are wide enough for their labels.
  • The summary line and the CSV export follow the statuses on show (picked statuses or the open tab).
  • The CSV export also follows the month, sales channel and customer filters, so the file matches the list.
  • Choose the CSV columns under WooCommerce > Order Filter: addresses (one column or split into parts), phone, email, SKUs, shipping and payment method, totals and more, with a preview of the file’s first lines.
  • “Clear Filters” button next to the filter controls.
  • “More Filters” row with payment method, shipping method, customer role, billing country and an order total range. They work on their own or with the product filter, and the summary line and the CSV export follow them. Orders paid through deposit or partial-payment sub-orders match by those payments.
  • A warning when Min QTY is above Max QTY.
  • Screen-reader labels on every filter control.
  • “Status is” / “Status is not” switch in front of the status box.
  • Min QTY and Max QTY apply to the picked product’s quantity in the order (variations added together), to every picked product with “Contains all of”, or to the order’s item total when no product is picked.
  • Deleting the plugin removes its settings.
  • Tested with WordPress 7.1 and WooCommerce 11.1.

1.2.0

  • CSV export of the filtered orders.
  • Brand filter (WooCommerce brands, or any brand taxonomy via a filter).
  • Per product breakdown in the summary line.
  • “View orders” link on the product edit screen.
  • Refund records are no longer counted in the summary.

1.1.0

  • Category and tag filter, minimum quantity, summary line, sticky status tabs, order screen link, settings page.

1.0.0

  • First release.