PrestaShop Catalogue Management

Split Combinations into Separate Products: Explode a Variant Product in PrestaShop 8 & 9

A product with combinations becomes a full range of separate products, without losing a single image or stock unit.

Fifteen colours locked inside a dropdown means one URL for fifteen search intents. This module explodes a product with combinations into genuinely separate products, each with its own images, price, stock and address. Two strategies: one product per combination, or one product per colour with sizes kept as combinations. Preview before any write, batch processing, and one-click rollback if the result is not what you wanted.

At a glance
  • Two strategies: one product per combination, or one product per attribute group value
  • Final prices unchanged: impacts absorbed into base values, remaining impacts recalculated
  • Images, stock, categories, features, specific prices and suppliers carried over
  • Source product kept, disabled, 301-redirected or deleted
  • Batch processing with progress bar and full rollback of any split
PrestaShop 8.0 to 9.x 2 split strategies One-click rollback Multistore No override
  • 30-day refund
  • 12 months updates
  • 24h support
www.datafirefly.com/en/
Split Combinations into Separate Products: Explode a Variant Product in PrestaShop 8 & 9
v1.0.2 · updated 2026-08-03
What it does

The short version.

01

One product per combination

Each combination becomes a simple product. Price and weight impacts move into the base values, and the combination reference, EAN and stock follow.

02

One product per colour

You extract an attribute group. One page per colour, sizes stay as combinations. Remaining impacts are recalculated by subtraction, so final prices do not move.

03

The right images

Images linked to the combination are duplicated first, original file and already generated thumbnails included, jpg as well as webp and avif, with translated captions.

04

301 redirect on the source

The original product can be disabled and redirected to the first generated product, preserving inbound link equity and indexing history.

05

Full rollback

Every split is stored as a job. One button deletes all generated products and restores the status and redirect of the source product.

The long version

Everything you'd want to know before you install.

A detailed look at how Split Combinations into Separate Products: Explode a Variant Product in PrestaShop 8 & 9 works, why we built it the way we did, and the thinking behind the features above.

§ 01

Why split a product with combinations

A shoe available in fifteen colours sits on a single page. Google indexes one URL, shows one title, associates one image. The other fourteen colours do not exist for a search engine, and they do not appear in your Google Shopping feed or in your internal search results either. Splitting the page gives each colour its own address, title, description and thumbnail. It is the same logic large marketplaces apply to products heavily searched by attribute.

§ 02

Two strategies, one screen

The first creates a simple product per combination. Useful when each combination has its own commercial existence, for example a fragrance sold in three volumes. The second extracts one attribute group and leaves the others in place. You get one product per colour, each keeping its sizes as combinations. This is the most common case in fashion.

§ 03

Final prices do not move

In per-combination mode, the combination price impact is added to the base price of the new product. In per-group mode, the module takes the minimum impact within the extracted group, moves it into the base price, then recalculates each remaining impact by subtraction. A customer paying 92 euros for a white item in size M still pays 92 euros after the split. Weight is handled the same way.

§ 04

What follows the product

Images linked to the combination are duplicated first, falling back to all source images when none are linked. The copy covers the original file and every thumbnail already generated, whatever the format, along with translated captions. Stock is transferred combination by combination. Then come categories, the default category, features including custom values, tags, remapped specific prices, carriers, attachments, suppliers and customisation fields.

§ 05

What happens to the source product

Four behaviours are available. Keep it as is, while you check the result. Disable it. Disable and 301-redirect it to the first generated product, which passes inbound links along and avoids a 404 on an already indexed URL. Or delete it permanently once the split is validated.

§ 06

Preview then batch processing

Before any write, a preview lists the products that will be created with their name, the number of combinations kept, the price excluding tax and the weight. The split is then stored as a job and processed in successive AJAX batches. Batch size is adjustable, so a range of a hundred references can be processed on shared hosting without hitting the execution time limit.

§ 07

Rolling back a split

Every job appears in a history with its status and a product-by-product breakdown. A rollback button deletes all generated products and restores the original status and redirect of the source product. You can therefore test a strategy, inspect the front office rendering, revert and start again with different settings.

§ 08

Technical integration

The module adds a tab under Catalog and installs no class or controller override. It ships no Composer dependency and runs on a standalone class loader. Table and constant names that differ between PrestaShop 8 and 9 are resolved dynamically, including the product image directory renamed in version 9. Two tables are created for jobs and their items, and dropped on uninstall.