WooCommerce product display problems on category page?

Me again, posting about my favorite WordPress ecommerce plugin, WooCommerce, and my favorite WP themes, Elegant Themes.

I recently (today) had some problems with the WooCommerce product display on a client’s website. Scouring the forums and the knowledge base and Google in general, I saw I was not the only one. There are a lot of us who wonder why the default setting for product display on a normal product page is set to “10”. Strange number that doesn’t work well with rows of 4, the default row setting in Woo. BUT that problem is fairly easily solved. I’ve done it several times with no problem.

My problem today was different. The number of products on the product category was the issue. It was only displaying 5 products at a time, which looked ridiculous. I spent way too long trying to find the WooCommerce .php template that called for that limit. It wasn’t there. Because it wasn’t WooCommerce’s fault at all. It was my theme.

Right there in the epanel of my  Divi theme was a setting for default number of posts to display on a category page… and it was set to “5”.

I figured I’d lay out a list of all the places to check if you encounter this problem:

  • Go to Settings/Reading and make sure the field for “Blog pages show at most” is set where you want it.
  • Look carefully through your theme settings for any mention of number of posts on a category page or an archive page. Many themes have a setting that specifies this value. All of the Elegant Themes have a field for this setting. Go to Appearance/(Your) Theme Options/General/Number of Posts displayed on Category page. 
  • If you still have trouble, you may need to add a snippet to your theme’s functions.php referred to in the WooCommerce documentation here.
  • It’s also possible that your theme has its own category or archive page template that dictates the number of posts per category page. Check there as a last resort.

Hope this helps you out, and feel free to ask questions below. I’ll help if I can!