What Do you suggest as document type to model a product plus images, options, etc?

Which is a good solution to model a product with images, description and base price and then some options with images, description and price? Nested Content?
Thanks…

There are several approaches to accomplish this task. Here is what I would do.

I’m assuming you already have a content type configured for your Product.

In your circumstance I would ask the client or stakeholder a few questions. The most concerning one for me is “are options always unique to the item?”. Do they have options today that are shared amongst products? Do they ever anticipate having an option shared between products in the future?

My solution would aim for products to share and have their own unique options available. This approach is more verbose but provides the most flexibility in the long run.

  1. Create a content type for Is Product Option. Assign it the properties you need (images, description, and price). This can be used as a composition for the the following 2 points.

  2. Create a content type for Product Option and inherit from Is Product Option.

  3. Create an element type for Unique Product Option and inherit from Is Product Option.

  4. Create a content type for Shared Product Options. Configure it so you can create it at the root of your site, or another location of your choosing. Allow Product Option as children.

  5. Create your content node for Shared Product Options and create at least one Product Option as a child to ensure the rest of this is setup correctly.

  6. Create a element type for Shared Product Option. It should be configured with one property, a content picker and setup to only allow Product Option to be chosen.

  7. Update your content type for Product by adding a property for options. I’d configure options to be a block list editor and I’d allow two types of content. Allow the Unique Product Option and Shared Product Option.

If you discover that sharing options between products is not a requirement from your client, or it’s too verbose a solution:

  1. Create an element type for Product Option. Assign it the properties you need (images, description, and price).

  2. Update your content type for Product by adding a property for options. I’d configure options to be a block list editor. Configure it to only allow Product Option blocks.

Thanks for your reply and sorry for my late response. Yes, can happen that some options must be shared. So your idea is to create the basic doctype and sharing between products so you don’t have to put in every time. And for categories ( tags? )
and product?