Building a Product Catalog

Adding products to your Ubercart site is all fine and dandy, but when it comes time to open you better have a way to present those products to your customers! One way Ubercart facilitates this is by offering a catalog module as part of its core distribution. This module replicates what may be done with an innovative use of the Views module with a few extra bells and whistles, but the best thing is it does it all for you! Setting up a complex View is not for the faint of heart and not even always necessary when a simpler, quicker solution exists. The catalog module works by creating a tracking a taxonomy vocabulary (otherwise referred to as a category). The taxonomy system is one unique feature of Drupal that lets you classify nodes on your site, and a vocabulary is just a specific grouping of taxonomy terms. In the case of the product catalog, you will simply have to add terms for the categories you want in your store and then start adding these terms to products. A few features of the core catalog module include image support for catalog categories, nested subcategories with the ability to feature products in multiple categories, a catalog browsing block with the product count, and more. You can explore and tweak the settings through Administer > Store administration > Configuration > Catalog settings. Currently, you can even choose to display products in a list or a grid and include add to cart buttons and forms in catalog displays. Adding categories to your catalog and then putting products in them is a fairly simple, standard Drupal procedure. To take advantage of the core catalog, make sure you've enabled the Catalog module and are logged in as a user with access to administer catalog. (When you're setting up user access control for the catalog, note that you must also give users access to view catalog in the event that your product catalog should be restricted to specific user types.) Use the following steps to start building your product catalog. Creating the catalog and populating it with products:
  1. Browse to Administer › Content management > Taxonomy.
  2. Optional. If you want to add a description to the top of the catalog page, first click the edit vocabulary operations link and put your message in the description field and submit the form.
  3. Click the add terms operations link for the Catalog vocabulary. It's possible to specify alternate vocabularies as the catalog vocabulary, but this is the name of the vocabulary in the default state.
  4. Start adding terms for the categories you need in your catalog with the form that pops up. To create nested categories, select a parent term when you're creating a new category. Image support also works and will display resized category images when browsing the catalog if you have the Image Cache module installed. Using the description field you can add text to appear at the top of this page when browsing the catalog.
  5. Browse to a product node and click its Edittab.
  6. Scroll down below the product description and you will see a select box with your catalog vocabulary terms in it. Select the catalog category term or term (if you want to list the product in multiple categories) to list this product in.
  7. Browse to the catalog (by default, http://www.example.com/catalog) and see your products listed!
  8. Tweak the settings to your liking at Administer > Administer store > Configuration > Catalog settings. Read more about the settings here.
Here is a quick YouTube screencast of creating and editing a catalog term on the ubercart demo site (with admin menu module). Customization There are a lot of options to take advantage of that will help you customize the catalog to your site's needs. However, we do realize it is not a one-solution-fits-all type of module. Many stores have requirements that the core catalog module simply can't meet and won't ever do. In these situations, you can easily take advantage of other Drupal modules like Views and components of the Views Bonus Pack to recreate a fully custom product catalog. Some tutorials using these and other modules have been posted in the contributions directory.