This is probably the most frequently asked question about Magento; in combination with “Why are no categories shown on my home page?”. Note that the error “no products on homepage” is also a frequent one, but a different one: this is about getting “featured” or “new” products to show on the “Home” CMS page; not about getting products to display at all.
First, for categories to be shown on the webshop frontend website, they need to be sub-categories of the one-and -only root category (normally “Default category”). You can drag&drop them to that end.
Then, you might see the error “There are no products matching the selection” when displaying a category, even though you created products. To be shown in a category, a product must match these conditions:
- In the “Stock management” tab of the product properties: “amount” must be higher than “Amount to set as Not in Stock”.
- In the “Stock management” tab of the product properties: “stocking” (or similar; last item) must be “In stock”. It seems to automatically change to “Not in stock” whenever the amount got lower than the threshold described above, so this value might change accidentally without your notice.
- In the “Categores” tab of the product properties: the product must have a tick in the category where you want it to show up; it does not necessarily need a tick in the root path categories of this one to successfully show up.
- In the “General” tab of the product properties: the status must be set to “activated”.
- In the “General” tab of teh product properties: the visibility field must include “catalogue”.
- It might also be necessary to update database indexes if Magento tells you to do so by a reminder in the header of the backend.
If this does not work, exclude that the reason is because of the stock management behavior: In “System -> Configuration -> Catalogue -> Inventory”, set “Show products that are not in stock” to “Yes” (just for testing purposes) [source]