I am trying to develop an email commerce site that is easy for customers to navigate. The way that I would like to do it is so that I have a range of different parent categories and that when a customer clicks in this it opens a page where the different child categories are displayed with image tiles. When a customer clicks onto this tile it will then bring up the products in that child category.

Is this possible at all and if so what is the best way to go about making it operate in this way?

Many thanks for any help in advance

1 Answer 1


This is absolutely possible with Craft & Commerce.

First, you would set up your categories group - say, Product categories. You can add custom fields to these categories, for example an image field for an image that represents the category.

Then, you'd enter your category data - categories are inherently hierarchical (well, taxonomical really) - so it's easy to set up Parent -> Child structures.

Next, you would add a categories field as a custom field to your products when setting them up in Commerce.

Then, when you enter your products you can choose which category (or categories) the product should be in.

Finally, you would set up templates to actually display all this: probably one template to display the parent categories list, another to display which user chosen sub-category is required, and then finally templates for your product grid and most likely another for your actual product pages.

It sounds like a bit of a process spelled out like that, but if you step through setting up the fields and entering some data, and then start with very simple templates to just list out the things at each stage, you will find it is quite easy to set all this up - the only complexity really comes from the design angle -> i.e. making it look and work nicely!

Good luck with it!

Your Answer

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

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