Knowledge Base
Deviking Product feeds Pro

Building Product Filters for Precise Feed Control

Deviking Product Feeds Pro lets you control exactly which WooCommerce products are allowed into each feed.

Filtering is configured independently for every feed, so the same WooCommerce catalog can be used to create different exports for marketplaces, comparison engines, distributors, advertising platforms, or other integrations.

The filtering system has two levels:

  • Quick Include / Exclude Filters for direct product, SKU, and category targeting
  • Advanced Filter Groups for conditional rules using product data, attributes, taxonomies, custom fields, and other available sources

Quick filters are evaluated first. Advanced Filter Groups are then evaluated against the products that remain.


Open the Feed Filters

Go to:

Deviking Feeds → Feeds

Edit the feed you want to configure and open the Filters section.

You can use Quick Filters, Advanced Filter Groups, or both.


Quick Include / Exclude Filters

Quick Filters are designed for cases where you already know exactly which products, SKUs, or categories should be included or excluded.

Available controls include:

 
Include Product IDs
Exclude Product IDs

Include SKUs
Exclude SKUs

Include Category IDs
Exclude Category IDs
 

These filters are applied before the Advanced Filter Groups.


Include Specific Products

Use Include Product IDs when the feed should contain only selected products.

For example:

 
Include Product IDs:
125, 248, 510
 

Only products matching those IDs remain eligible for the feed.

This is useful for:

  • manually curated feeds;
  • promotional product groups;
  • testing feeds;
  • feeds created for a specific partner;
  • feeds containing a limited product range.

Exclude Specific Products

Use Exclude Product IDs when most of the catalog should remain available but specific products must be removed.

For example:

 
Exclude Product IDs:
112, 214, 309
 

Those products are removed while the remaining eligible catalog continues through the filtering process.

When variation records are involved, product-ID filtering also recognizes the parent product ID where relevant.


Filter by SKU

You can also include or exclude products using exact WooCommerce SKUs.

Example:

 
Include SKUs:
ABC-100
ABC-101
ABC-102
 

or:

 
Exclude SKUs:
TEST-001
SAMPLE-01
DISCONTINUED-25
 

SKU filtering is useful when your external system already works with merchant SKUs rather than WordPress product IDs.


Filter by Category

Use category filters when an entire WooCommerce category should be included or excluded.

For example:

 
Include Category IDs:
24, 31
 

can restrict the feed to the selected categories.

Alternatively:

 
Exclude Category IDs:
48, 52
 

removes products assigned to those categories.

Deviking Product Feeds uses WooCommerce category IDs for these Quick Filters.


Advanced Filter Groups

For more complex requirements, use Advanced Filter Groups.

Advanced Filters use the same source system available throughout Deviking Product Feeds, allowing conditions to be created from product data rather than only IDs or categories.

A rule can evaluate values such as:

 
Current Price
Regular Price
Sale Price
Stock Status
Stock Quantity
SKU
Product Type
Categories
Tags
Attributes
Custom Fields / Meta
Custom Taxonomies
Dynamic Attributes
 

This makes it possible to define exactly which products qualify for a feed.


Include and Exclude Groups

Every Advanced Filter Group has a mode:

Include

Products must satisfy the configured Include logic to remain eligible.

Exclude

Any product matching an Exclude group is removed from the feed.

This keeps qualification rules and rejection rules separate.


Example: Include Only In-Stock Shoes

Create an Include Group:

 
Group Mode:
Include

Condition 1:
Category = Shoes

AND

Condition 2:
Stock Status = instock
 

The feed will keep products that satisfy both requirements.

Conceptually:

 
Shoes + In Stock
→ Included

Shoes + Out of Stock
→ Not Included

T-Shirts + In Stock
→ Not Included
 

Example: Exclude a Brand

Create an Exclude Group:

 
Group Mode:
Exclude

Brand = Example Brand
 

Matching products are removed.

All other products that passed the Include rules remain eligible.


Combining Include and Exclude Rules

A feed can use both types simultaneously.

For example:

 
INCLUDE GROUP

Category = Shoes
AND
Stock Status = instock
 

and:

 
EXCLUDE GROUP

Brand = Example Brand
OR
SKU in list = TEST-1, TEST-2
 

The result is:

 
In-stock Shoes

EXCEPT

products from Example Brand
or
products with TEST-1 / TEST-2 SKUs
 

Deviking Product Feeds evaluates Include rules for eligibility and then uses Exclude groups as veto rules.


AND and OR Logic Inside a Group

Conditions inside an Advanced Filter Group can use:

 
AND
 

or:

 
OR
 

AND

Every condition must match.

Example:

 
Stock Status = instock
AND
Current Price >= 50
 

A product must be both in stock and priced at 50 or more.


OR

At least one condition must match.

Example:

 
Brand = Brand A
OR
Brand = Brand B
 

Products belonging to either brand satisfy the group.


Logic Between Include Groups

Multiple Include Groups can also be combined globally using AND or OR logic.

For example:

 
Include Group 1:
Category = Shoes
AND
Stock Status = instock
 
 
Include Group 2:
Current Price >= 50
 

The relationship between those groups determines whether products must satisfy both groups or whether satisfying one group is enough.

Exclude groups work differently: a matching Exclude group acts as a veto and removes the product.


Available Comparison Operators

Advanced Filter conditions support operators including:

OperatorUse
EqualsExact match
Not equalValue must differ
>Greater than
>=Greater than or equal
<Less than
<=Less than or equal
ContainsText contains a value
Does not containText does not contain a value
Starts withValue starts with specified text
Ends withValue ends with specified text
Is emptySource has no value
Is not emptySource contains a value
In listValue matches one of several values
Not in listValue does not match listed values

Numeric operators are treated as numeric comparisons when the resolved source value is numeric.


Remove Out-of-Stock Products

Instead of a dedicated on/off switch, create an Exclude rule:

 
Group Mode:
Exclude

Source:
Stock Status

Operator:
Equals

Value:
outofstock
 

Products matching the condition are removed from the feed.


Remove Backordered Products

Create another Exclude rule:

 
Stock Status = onbackorder
 

You can place it in the same group using OR:

 
Stock Status = outofstock
OR
Stock Status = onbackorder
 

This removes both inventory states.


Filter by Stock Quantity

You can create numeric inventory rules.

For example, exclude products with fewer than five units:

 
Group Mode:
Exclude

Stock Quantity < 5
 

Or keep only products with significant inventory:

 
Group Mode:
Include

Stock Quantity >= 10
 

Filter by Price

Price-based rules can use the WooCommerce price sources available to the feed.

For example:

 
Include

Current Price >= 25
 

or:

 
Exclude

Current Price > 1000
 

You can combine price with other conditions:

 
Category = Accessories
AND
Current Price >= 20
AND
Stock Status = instock
 

Remove Products Without a Price

Use:

 
Group Mode:
Exclude

Current Price
Is empty
 

You can also create rules based on the numeric price when necessary, for example:

 
Current Price <= 0
 

The correct rule depends on how missing or zero-price products are stored in your WooCommerce catalog.


Remove Products Without a Description

Create:

 
Group Mode:
Exclude

Description
Is empty
 

If your feed uses Short Description instead, filter that source accordingly.

You can also combine multiple checks where needed.


Remove Products Without an Image

A similar rule can be created using the product image source:

 
Group Mode:
Exclude

Featured Image URL
Is empty
 

This is useful for marketplaces where a valid product image is mandatory.


Filter by Product Attribute

WooCommerce attributes can be used in Advanced Filter conditions.

For example:

 
Color = Black
 

or:

 
Brand = Example Brand
 

or:

 
Size In list S, M, L
 

The available attributes are discovered from the WooCommerce catalog and appear through the filter source system.


Filter by Custom Fields

Advanced Filters can also use detected product meta fields.

For example, if products contain:

 
_supplier
_gtin
_condition
_custom_label
 

those values can be used as filter sources when available in the store.

Example:

 
meta:_supplier = Supplier A
 

This allows feeds to be created around information added by WooCommerce extensions or custom product integrations.


Include Only Products with Required Data

You can create an Include Group requiring several fields:

 
GTIN Is not empty
AND
Featured Image URL Is not empty
AND
Current Price > 0
AND
Stock Status = instock
 

Only products satisfying all of those conditions remain eligible.

This can be useful for destinations with strict required-field policies.


Filtering Variations

Filters can also be used when your feed exports variations.

For example, a parent product may have:

 
T-Shirt - Black / Small
Stock: 8

T-Shirt - Black / Medium
Stock: 0

T-Shirt - White / Small
Stock: 12
 

With:

 
Product & Variation Mode:
Variations Only
 

and:

 
Exclude:
Stock Status = outofstock
 

the out-of-stock variation can be removed while eligible variations remain.

Quick Product ID filtering also recognizes parent IDs where applicable, which is useful when working with variation-based feeds.


Only Exclude Groups

You do not need to create an Include Group.

If a feed contains only Exclude groups, Deviking starts with the normal eligible catalog and removes products that match those Exclude rules.

For example:

 
Exclude Group 1:
Stock Status = outofstock
 
 
Exclude Group 2:
Brand = Discontinued Brand
 
 
Exclude Group 3:
SKU Starts with TEST-
 

Every product remains eligible unless one of these groups removes it.


Quick Filters and Advanced Filters Together

Quick Filters and Advanced Filter Groups can work together.

For example:

 
QUICK FILTER

Include Category IDs:
25, 26, 27
 

followed by:

 
ADVANCED INCLUDE

Stock Status = instock
AND
Current Price >= 20
 

and:

 
ADVANCED EXCLUDE

Brand = Example Brand
 

The feed first narrows the catalog using Quick Filters. Advanced rules then evaluate the remaining candidates.


Filtering Large Product Catalogs

Deviking Product Feeds Pro can optimize supported Advanced Filter rules before full WooCommerce product objects are loaded.

Exact Include conditions may reduce the initial candidate set, while query-safe Exclude conditions can eliminate products earlier in the generation process.

When a rule cannot safely be optimized at query level, it continues through the normal runtime filtering system instead. The runtime filter remains the final authority.

This allows restrictive filters to improve generation efficiency without changing the logical result of the feed.


Advanced Filter Diagnostics

When Advanced Filter diagnostics are enabled, the Logs can show information such as:

 
Catalog size
Include / Exclude group counts
Candidate products
Prefilter status
Exclude push-down status
Queried parent IDs
Final record count
Generation stage timings
 

A diagnostic status such as:

 
SKIPPED
 

or:

 
NOT_APPLIED
 

does not automatically indicate an error. It can simply mean that the optimizer chose the normal runtime path for that rule.


Preview Your Filtered Feed

After creating or changing filters:

  1. Save the feed
  2. Run Preview
  3. Check representative products
  4. Run Validate Feed
  5. Generate the feed when the result is correct

Remember that Generate Feed uses the last saved configuration. If you have unsaved changes, use Save & Generate instead.


Example: Marketplace-Ready Product Filter

A practical feed might use:

 
INCLUDE GROUP

Category = Shoes
AND
Stock Status = instock
AND
Current Price > 0
AND
Featured Image URL Is not empty
 

with:

 
EXCLUDE GROUP

Brand = Test Brand
OR
SKU Starts with TEST-
 

The resulting feed contains eligible in-stock shoes with a valid price and image while removing the unwanted brand and test products.


Recommended Workflow

For most feeds:

Choose Product & Variation Mode → Add Quick Filters if needed → Build Include Groups → Add Exclude Groups → Preview → Validate → Save & Generate

Start with the simplest rules that satisfy the destination requirements and add Advanced Filter Groups only when more precise product selection is needed.