Maybe configurable product is not the appropriate term, but I'm looking to provide different product options that will dynamically update the URL/SKU/Price. I've included a perfect example below of what we're trying to achieve. If it can be done OOTB, great - if it has to be an extension, that's fine - I just can't seem to find what I'm looking for.

enter image description here

Website of example shown

When you select the different options, the Item/SKU updates, the pricing updates and the URL changes. Ideally, we would have two simple products - but on each simple product you could select the other version, like the image above. Any insight would be greatly appreciated!

2 Answers 2


The example you linked to looks to be using a customized version Configurable Swatches. See the Adobe document on how to set this up: https://docs.magento.com/user-guide/catalog/swatches.html

Swapping the URLs would require custom development to load those URL keys from the simple products and pass them to the front end. Then, use JS to swap out the URLs. It would also need to load the URL from the product on page load and select the current option. All in all, a fairly advanced project.


What you described in the example looks like Swatches. This is also a configurable product, but the option for choosing the option does not look like a dropdown, but is similar to what you can see in your example (rectangle for selecting an option with text, picture or product color).

Out of the box, when choosing options, the images and the price will change. More details can be found here: Magento\ConfigurableProduct\Block\Product\View\Type\Configurable::getJsonConfig().

By default, simple products within a configurable are Not visible individually. Therefore, if we open the URL of a simple product, we get a 404.

But out of the box in Magento 2 it is possible to preselect a simple product using parameters in the URL of a configurable product.

To preselect a simple product in a configurable product, the address of a simple product should look like this for example:



/mona-pullover-hoodlie.html - configurable product URL,

143, 93 - attributes IDs,

167, 53 - option IDs.

You can create a Plugin (Interceptor) for Magento\ConfigurableProduct\Block\Product\View\Type\Configurable::getJsonConfig() where you need to add missing OOTB SKUs and URLs (formed as in the example above) for each simple product.

Switching SKU and URL when selecting an option can be implemented in vendor/magento/module-swatches/view/base/web/js/swatch-renderer.js.

I made VCT Product Info Switcher and VCT Simple Product URL modules that solves this problem.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.