You have 800 products. You need 12 of them.
Which products have no featured image? Which are priced above $100 but haven't sold in three months? Which are out of stock in the "Electronics" category? The WordPress Products admin list lets you filter by one attribute at a time, at most. Combining criteria means exporting to CSV and filtering in Excel.
For an automation workflow, "email every out-of-stock supplier", "discount slow-moving inventory", "hide products without images", you need a programmatic way to query products. That usually means writing a custom WP_Query.
What most people do instead
A better way: one command, many filters
Open the TrueCommander navigator. Type filter product with whatever criteria you need. Combine filters, price, stock, category, image status, sales performance, and the command returns matching products with their details.
Shown in advanced mode, where commands start with tp. In easy mode you type the same command without the tp prefix.
Real power comes inside macros. Filter products, then loop over each match, email the supplier, apply a discount, update stock status, generate a PDF report. The filter command is the data-fetching half; macros are the action half.
How it works
The command builds a WP_Query with WooCommerce meta queries based on your parameters, then returns matching products with full details (title, SKU, price, stock, featured image, category, sales count). Default limit is 200 products. Pass -limit=-1 for unbounded results.
| Parameter | Value |
|---|---|
-price-from / -price-to | Price range (e.g., -price-from=100 -price-to=500). Use -price-above for a single floor. |
-in-stock / -stock-below | Flag for in-stock only, or stock quantity below a threshold (e.g., -stock-below=1 for out of stock) |
-category / -category_id | Category slug or ID (e.g., -category=electronics) |
-no-image | Flag to find products missing a featured image |
-sales / -days | Units sold at or below this count over the last N days (e.g., -sales=0 -days=90) |
-limit | Default 200. Use -1 for unlimited. |
| Can be used in |
Real example
Monday morning: you want a report of every product that's been out of stock for 7+ days. You open the navigator and run tp filter product -stock=out. The result is 23 products.
You chain this into a macro: Filter out-of-stock products → For each, look up supplier contact → Generate a PDF restock request → Email it to the supplier. Every Monday at 9am, the Cron Schedules module runs the macro. Twenty-three emails go out with zero manual work.
Later you add another macro: Filter products with zero sales in 60 days → For each, apply a 20% discount tag. Slow-moving inventory starts clearing itself.
Goes further with TrueCommander
Frequently asked questions
tp filter product returns products matching exact criteria, for example tp filter product -stock-below=10 -category=shoes, in one command.-stock-below=10 for a low-stock list to reorder, or -in-stock to restrict to in-stock items. Combine with a category to scope it to one part of the catalog.-sales=0 with -days=30 to list products with no sales in the last month, the shortlist for a promotion, a price change, or removal.-limit to change that, or -limit=-1 for no cap, and the results come back with the details you filtered on.