Generation Debugging Tools
Two settings in the Generation Options tab let you limit or focus feed generation during troubleshooting — without touching your live cron schedule or production configuration.
Available since v2.4.6
Overview
When a product shows unexpected data in Facebook's catalogue, or when you want to test a configuration change without waiting for your full catalogue to process, these tools let you narrow generation to exactly the products you care about or cap the total count to a small number. Both settings are temporary by design: the module warns you prominently when either is active so you remember to clear it before your next scheduled run.
Both fields are on the Generation Options tab of the module configuration page.

Settings
| Field | Config key | Default | Description |
|---|---|---|---|
| Max Products Generation | FPF_GENERATE_MAX_PRODUCTS | 0 (disabled) | Cap total products included in the feed to this number. 0 means no cap. |
| Debug Product Feed Generation | FPF_FEED_DEBUG_IDS | empty (disabled) | Comma-separated list of product IDs. When set, the feed contains only these products and all others are skipped. |
Max Products Generation
Enter any positive integer to stop the feed after that many products have been processed. The SQL queries that retrieve your product list are rewritten to apply a LIMIT at the database level, so generation stops early and is proportionally faster.
This setting applies globally across all shops, languages, and country feeds in the same run.
Warning: When this field contains a non-zero value, the module displays a warning banner at the top of every configuration page reminding you that a generation cap is active. Clear the field (set it to
0) once your testing is complete so your live feed contains your full catalogue.
Debug Product Feed Generation
Type a product name or ID into the search box and select the product from the autocomplete list. You can add multiple products. The module stores the selection as a comma-separated list of product IDs.
During generation, any product whose ID is not in the list is immediately skipped with a debug skip reason — no XML is written for it and it does not count toward error totals. Products in the list go through the full generation pipeline exactly as they would in a normal run: pricing, combinations, images, shipping, custom labels, and Google category mapping are all applied.
This makes the setting useful for two different workflows:
- Diagnosing a specific product — you see the exact output (or error) for that product in isolation, without noise from other items in your catalogue.
- Spot-checking configuration changes — apply a setting change, trigger a manual generation with a small ID list, and inspect the result before committing to a full run.
Warning: When this field is non-empty, the module displays a warning banner on every configuration page. The message includes the number of selected products and a direct link to the field. Clear the selection when testing is done.
Use Cases
Checking a misconfigured product A product shows the wrong price or a missing image in Facebook's catalogue. Enter its product ID in Debug Product Feed Generation, click Generate Feed Now from the Manual Feed Generation tab, and open the feed URL. You see only that product's entry and can compare it against what you expect.
Testing a new configuration on a large catalogue
You have 15,000 products and want to verify that enabling a new custom label works correctly before running a full generation. Set Max Products Generation to 50, save, and trigger a manual generation. The feed generates in seconds. Review the output, then set the cap back to 0.
Isolating a combination issue A product with multiple size/color combinations is generating duplicate entries. Add the product ID to Debug Product Feed Generation and generate. The feed shows only that product's combinations, making it straightforward to spot which combination attributes are causing the duplication.
Important Notes
- Both settings affect every shop and language feed in the same generation run — they are not per-shop or per-language.
- When Debug Product Feed Generation is active, the normal log verbosity cap is not applied. Generation logs show each product as it is processed, giving you detailed output even at lower log settings.
- Setting Max Products Generation to
1produces a valid single-product feed, which is a quick way to verify that the feed URL is reachable and the XML format is correct before investigating content issues. - Both settings persist until you manually clear them. A cron-triggered generation will also respect these limits, so a production cron run would produce an incomplete or filtered feed if you forget to clear the settings after testing.
- Neither setting changes the feed file location or the URL Facebook uses to retrieve the catalogue. The same feed URL is updated whether you generated a filtered test run or a full production run.