Written by Max Milbers. Posted in Concepts

Customfields and product customfields

Customfields give the possibility to customise and extend the attributes and logic of a product. It is impossible to program a product which directly fits for all needs. So we created a general solution.

The customfields are setup in the customfield edit view and then handled at the product edit view. The general customfield setup configures the type and attributes of the customfield. The concrect values are handled in the product edit view. Lets use a real life example. Lets assume we want to sell a product with the attributes "size" and "colour". So we create two new customfields (in VM slang customs) of the type "String", we name one "size", the other "colour". Now we go to our product and add the customfield and write the size respectivly colour of the product in its value field. The product has now the information of the colour stored in the database in an extra table as extra row. This is very important to understand, because it gives the possiblity to write filters like "show me all flat screens with 27". The configuration of the customfield decide now how the attribute is handled, where to display it in the product description, or also as unique identifying attribute in the cart.

Customfields can be extended with plugins and solve any specialised demand. Customfields can also be used to create product variants or to combine product children to a variants of a product.


  • S: String For text
  • P: Property Displays a selected property of the product
  • B: Boolean Legacy, same as string
  • D: Date Displays a date
  • T: Time Displays a time
  • M: Image Displays images
  • X: Editor The same as string, just with editor for the input in product edit
  • Y: Textarea The same as string, just with a textfield
  • C: Multi Variant The most sophisticated custom to combine children as variant, the ramifications are serial/parallel
  • A: Generic child variant Combines also children as variant, but the ramifications are serialised
  • E: Plug-ins displays a plugin
  • G: Custom Group Other customfields can be assigned to groups, for faster adding to products
  • R: Related Products displays a related product
  • Z: Related Categories displayes a related category

Generic child variant and Multivariant

Both customfields create variants by using derived products (child products). Changing the variant is done by an ajax reload of the whole product description. So both customfields allow to reload the product completly. Derived products are complete products and able to be extended with all other normal customfields. Using generic child variants or multivariants can fine grain the stocking options between variants. They also offer better SEO options, because any variant is really handled as own product, which is a variant of the main product (optionable).

The generic child variant is very handy, when the first option influences the following options. A generic child variant attached to a parent with child variant, creates a simple decision tree.

The Multivariant works better when more than one dropdown is used, which influences all the other choices. At the end it is a matter or taste and purpose to use the right customfield.

More tips and tricks here PRODUCT CREATION