74

I've recently been tasked with the build and deployment of a large Ecommerce site. In the past we've had to use the clients legacy X-cart installation for redevelopment (too far integrated with their existing work flow).

We'd heard good things about Magento, so I've set up a test install to get to grips with it. After a couple of initial issues, there is a live development site which displays categories on the default theme. The problem we've hit now is that products don't display..!

After a lot more in-depth research into this, all I've been able to discover is that quite a number of developers endorse using other solutions entirely, with the other 50% saying after the steep learning curve the platform is as wonderful as we'd initially been led to believe.

Now, my test category is showing, so I know this is configured properly. I've set up three test products and associated them with this (all done following the Magento user guide), checked double checked and thrice checked the products are enabled and visible individually, yet still the front end says the category has no products in it. I've cleared the cache repeatedly, reset everything possible many times in index management - no products show up.

I have to make a call tomorrow morning on whether we're going ahead with Magento. If I can't even get it to show products I'm going to have to go with something with a more established track record and more community support available. Can anybody advise what could possibly be wrong here?

Aaron
  • 1,549
  • 2
  • 13
  • 19

7 Answers7

177

The checklist for whether items are in stock follows. Some will seem stupid until the first time you spend an hour trying to figure this problem out:

  1. The products must be Visible in Catalog.
  2. The products must be Enabled.
  3. Product must have a stock Quantity.
  4. The product must be set to In Stock.
  5. If the product is set not to track stock, it still has to have a stock Quantity and be set to In Stock.
  6. The product must be assigned to the target Category.
  7. If using multi-website mode (or if you imported the products through Data Flow), the products must be assigned to the target Website.
  8. You must refresh your Cache / Indices, just to make sure.
starball
  • 20,030
  • 7
  • 43
  • 238
Joe Mastey
  • 26,809
  • 13
  • 80
  • 104
  • 4
    Thanks Joe, our test products weren't configured properly (even after a lot of checks by a number of people!). Still getting to grips with Magento but I think we're finally making some progress. Thanks again for your response. – Aaron Mar 24 '10 at 16:07
  • Is it to make it appear in the admin panel or on the actual store pages? I am pushing product using API and I definitely save them to database, but they are not appearing in the admin product view. thank you – bobek Feb 03 '12 at 19:25
  • @bobek these are instructions to make the products appear in the frontend, but it is entirely possible than #7 is being violated if you still don't see them in the admin panel. – Joe Mastey Feb 05 '12 at 01:38
  • 1
    Works! Thanks for the quick checklist. – Makarand Apr 06 '13 at 11:07
  • Excellent! Can anyone comment on how the `System -> Configuration -> Catalog / Inventory -> Display Out of Stock Products = Yes` setting would affect points 3,4 and 5 please? – LeonardChallis Jan 31 '14 at 14:33
  • 2
    There's a bug in 1.9.3. If you increase the quantity and set 'In Stock' at the same time, the latter will not take effect. – Rápli András Jul 27 '14 at 08:27
  • If it is a group product, it must have a corresponding simple product assigned under 'Associated Products' I believe. – johnsnails May 22 '15 at 05:11
  • Another issue could be completely unrelated to something 'obvious' If you uncomment this line `ini_set('display_errors', 1);` in `index.php` it may give you more info. In my most recent case, a developer was using ?> tags that were not enabled on my environment. Enabling errors made this clear. – johnsnails Jun 26 '17 at 05:58
  • Great comment! Point 4 was where I was stuck. I had a quantity specified but didn't switch the product to "in stock"! Lifesaver. – Jack Perry Nov 01 '17 at 05:08
22

Praxis tip: If all products are missing the price index could be a problem. The price index table catalog_product_index_price will be joined in category product list. Also the category/product index could be corrupt. I first check the price index if all products are missing.

cmuench
  • 598
  • 1
  • 5
  • 8
  • It seems that's my problem - I can't reindex product price index. What did you do to fix that? – alekwisnia Sep 07 '12 at 19:13
  • Waow, I have to thank you a lot! This was my problem too. My cli script wasn't updating the index properly and there was no error message at all. Later I figured out, that this happened, because I have APC enabled and forgot to enable apc for CLI in the config. So the script throws exceptions when working on the index or cache. APC makes things so good and so bad at the same time :) – Keenora Fluffball Apr 08 '14 at 08:38
  • How do I "check the price index"? Do I check it for each product? What am I checking exactly? – Protector one Feb 18 '17 at 12:07
5

I would also add: make sure for the category under the Display Settings tab, the Display Mode is set to "Products Only" or "Static blocks and products". If this is set to "Static block only", the products will not display for the category.

5

When uploading to a category our products were unavailable to view in the catalog or search, and none of our categories were showing up.

We had to create the categories as sub categories under the pre-existing 'Default Category'.

B. Edwards
  • 63
  • 1
  • 3
2

please Goto Index Management, Here Reindex all listed rows

System >> Index management

It will solve your Issue...

Jignesh Vagh
  • 122
  • 1
  • 3
  • 18
2

Check your product stock management options, in the default config items out of stock are not being displayed.

SiViG
  • 79
  • 2
2

Make sure PHP "GD" graphics module is installed. Magento uses it to create the product image thumbnails, etc. If it's missing you won't get any luck with Magento when it comes to seeing products anywhere. Type in your shell:

php5 -m

See if gd is in the list. If it's not, install it and restart apache by typing this in your shell:

sudo apt-get install php5-gd
sudo apachectl restart

There are more comprehensive instructions at this link.

CommaToast
  • 11,370
  • 7
  • 54
  • 69