Best way to build a product catalogue?

Permalink 2 users found helpful
I have a need to create a products section in a typical manner but I'm unsure how to achieve this with Concrete?


User clicks on 'Products', they see a list of product categories e.g. 'Mushrooms', 'Strawberries' and 'Potato's' with a thumbnail of each. They choose a category and that takes them to a page showing various products within that category e.g. 'Mushroom product 1', 'Mushroom product 2'. How can I achieve this? I don't want ecommerce, merely a way of showing the products in a sensible heir-achy.

For example, if I make separate pages for each product (will use Jordanlev's excellent Designer Content to make a suitable block for products), below a page for the parent category, how do I make the page for the parent category display 'excerpts' of the pages below it automatically?

- mushrooms (this needs to show excerpts of the products/pages below)
--mushroom product 1
--mushroom product 2

Does this make any sense? Can anyone advise of the best way to do this? Any pointers appreciated...

View Replies:
12345j replied on at Permalink Reply
i think you want the page list to show snippets of pages below it.
jordanlev replied on at Permalink Reply
I agree with @12345j's suggestion. To further clarify what I think he's getting at:

Instead of making each product a block, make each product a page. Use the sitemap hierarchy to organize them into categories. Use page attributes to store data, and use the Composer dashboard interface to facilitate quick data entry of new products (pages + attributes + content). Then use Page List blocks with custom templates to display the "products" (pages) in each category.

Or if your client will be creating new categories a lot, instead of using the sitemap hierarchy as a categorization tool, instead use a select attribute, then create a single_page that displays the lists of categories by querying the available "categories" (attribute options) and displays pages matching that attribute after user has chosen them. This technique will require a bit of programming, see these threads for a bunch of details on doing this:

But the point is that generally the best way to treat "data" in the Concrete5 world is that one page equals one unit of data. This lets you leverage a ton of existing features of the CMS... otherwise you're basically creating your own catalog system yourself from scratch (which is so 2004).

Good luck!

benfrainuk replied on at Permalink Reply
Jordan, thanks for that info. Extremely helpful as always. 12345j - thanks also for responding.

Will do a search on creating templates for Page List blocks and try and figure it from there.