I am working on a default sale campaign template, where the product block pulls from a product feed linked to my website’s “specials” page.
However, if I’ve set the product block in the email to display eg. 9 products (ie 3x3), but I do not have 9 products on my specials page, it is pulling other products from elsewhere on my site - most of these being products I thought we had discontinued (ie. marked as out of stock, private products on woocommerce, I don’t delete in order to preserve the sales data). I don’t want to exclude all other categories in the product feed, as anything marked into the “specials” category will also have it’s usual category location still.
Is it possible to limit the product block in my email template to ONLY show products from my specials category and nothing extra, without having to manually adjust the number of products shown for each use of the template?
Hi
Thank you for posting in the community!
If I were you, I’d make sure to always have 6 products in the category and then display the most popular six. From there, you can tease with a button directing them to the specials page, where all products are hosted. That being 6, 7 or 15.
I don’t believe it is possible in any other way, when your category changes in sizes.
You can use the filters in the product feed to ensure what it populates in terms of stock, prices and categories - simply press the ‘Add filter’ button when editing your feed:

I hope this helps!
Hi
Thank you for sharing the query in the community!
How to Set Up a Custom Product Feed in WooCommerce for “Specials” Only
If you want your Klaviyo emails to show only in-stock “specials” products—and avoid pulling in random extras, here’s a simple way to do it using a custom feed.
Step 1: Install a Product Feed Plugin in WooCommerce
First, you’ll need a plugin that lets you create custom product feeds. A couple of good options are:
These plugins let you:
-
Choose which categories to include or exclude
-
Filter out out-of-stock or hidden/private products
-
Create a custom feed URL you can use in Klaviyo
Step 2: Set Up a Feed for the “Specials” Category
Once the plugin is installed:
-
Choose your feed format (CSV, XML, or JSON — Klaviyo supports all of them)
-
Filter settings:
-
Include: only the “specials” category
-
Exclude: out-of-stock and private products
-
Make sure the feed includes:
-
Product name
-
Image URL
-
Product URL
-
Price
-
Inventory quantity
-
Category
When it’s all set, generate the feed and copy the feed URL.
Step 3: Connect the Feed to Klaviyo
In Klaviyo:
-
Go to Content > Images & Brand > Product Feeds
-
Click “Add Product Feed”
-
Choose “Custom Feed” and paste your WooCommerce feed URL
Klaviyo will start pulling product data from this feed and keep it updated regularly.
Step 4: Update Your Email Template
When building or editing your email in Klaviyo:
-
Add (or update) a product block
-
Select your new “specials” feed
-
Set how many products to show (e.g., 9)
-
Important: Turn off fallback products
This ensures only in-stock “specials” appear in the email—and nothing else fills in the gaps.
Hope this helps!
Hi
To piggyback on
Go to Content > Products and then on the far right side of the screen you’ll see the “Refresh” icon to Resync Page Items. Give that a shot as well if you are still running into issues.
Best,
Hi
Thank you for posting in the community!
If I were you, I’d make sure to always have 6 products in the category and then display the most popular six. From there, you can tease with a button directing them to the specials page, where all products are hosted. That being 6, 7 or 15.
I don’t believe it is possible in any other way, when your category changes in sizes.
You can use the filters in the product feed to ensure what it populates in terms of stock, prices and categories - simply press the ‘Add filter’ button when editing your feed:

I hope this helps!
Thank you for your reply!
Regarding the filtering, I seem to only have Category Includes/Excludes as my filter options, nothing about price or stock which as you mentioned would be very useful. Do you know why this could be?
Thanks

Hi
To piggyback on
Go to Content > Products and then on the far right side of the screen you’ll see the “Refresh” icon to Resync Page Items. Give that a shot as well if you are still running into issues.
Best,
After looking into this further, it seems to be that the products shown were marked as “private”/hidden from the public catalogue, though not actually marked out of stock. I’ve adjusted this to now make them out of stock (they definitely should have been anyway, just in case a customer did come across one of them and try to order) and that seems to have fixed my issue.
Thank you for your advice
Hi
That usually depends on your catalog and integration. The shown example is from a Shopify / Klaviyo integration - other integrations may have lesser options for setting up filters on the product feeds.
Log in to the Community
Use your Klaviyo credentials
Log in with Klaviyo
Use your Klaviyo credentials
Log in with KlaviyoEnter your E-mail address. We'll send you an e-mail with instructions to reset your password.