Directory / plugin
Oli Product Feed
v0.4.1 · by Olivier Bigras
Product feeds for WooCommerce: Google Merchant Center, Pinterest, Meta, TikTok and Microsoft, one feed per language and currency.
About this plugin
Oli Product Feed builds product feed files for shopping platforms from your WooCommerce catalog. Each feed targets one platform, one language and one currency. Files are generated in the background, in small batches, and their URL never changes, so the platform can fetch them on a schedule.
Channels
- Google Merchant Center (XML RSS 2.0, CSV or TSV)
- Pinterest Catalogs (availability preorder for products on backorder)
- Meta catalogs for Facebook and Instagram (Commerce Manager data feed)
- TikTok Catalog (CSV, TSV or XML)
- Microsoft Merchant Center for Bing Shopping (tab-separated TXT or XML)
- Generic CSV, TSV or XML with your own columns, for comparison sites and marketplaces
- Other channels can be added with the
oliprfe_channelsfilter
Feeds
- Simple and variable products: one item per variation, grouped with
item_group_id - Language and currency per feed: with TranslatePress, titles, descriptions, terms and links are taken in the feed language (the locale is set for the whole generation, including translated permalinks such as
/fr/); with Price Based on Country, prices come from a pricing zone and links can carry the country parameter - Attribute mapping: for every attribute, use the automatic rule or pick a product field, a product attribute, a taxonomy, a custom field (meta), a static value or a copy of another final attribute, with prefix, suffix, fallback and value map; a preview column shows the value for a sample product
- Variant color and size sent by default from the
pa_color(orpa_colour, Color, Colour) andpa_size(or Size) attributes, in the feed language; an explicit mapping always wins - Per-product values for the odd product (for example the color of one item)
- Title template such as
{brand} {name} {type} - {variation}, with the type set per category - GTIN validation (check digit); MPN = SKU for all brands or only for a list of brands
- Filters: categories, tags, price range, stock status, product IDs, words in the title, required fields; exclusion rules and availability rules on custom fields; live count of the matching products
- Backorder availability date: optional per-feed lead time (default 21 days) for products on backorder or sold while out of stock. Google, Microsoft (Bing) and Meta receive
g:availability= backorder (or preorder if configured),g:availability_datein ISO 8601 with the site time zone, and optional handling time. In-stock items are unchanged. A per-product override (days or a fixed date) can be set on the product and on each variation. - Google product category per category or per product
- UTM and extra link parameters
- Clear log: every generation lists the excluded products and why
Generation and serving
- Background generation with Action Scheduler (WP-Cron fallback), in batches, with a lock and an atomic file swap
- Schedule: hourly, twice a day, daily or weekly, at an off-peak hour; optional regeneration when products change (at most every 15 minutes)
- Static file (default) or served by WordPress with a short cache,
X-Robots-Tag: noindex, ETag and Last-Modified, for hosts whose CDN keeps static files too long. The pre-generated file is streamed while the plugins load (never rebuilt during the request); an optional must-use loader serves it even earlier - Logs in WooCommerce > Status > Logs
- Access: the plugin screens need the
manage_woocommercecapability (administrators and shop managers); when shop manager access is turned off in the settings,manage_options(administrators) - WP-CLI:
wp oli-feed list|generate|status|export|import|settings
Privacy
The plugin makes no external request, loads no remote asset and collects no data. Feeds only contain public product data.