WooCommerce product category count

I’m creating a filter widget to show WooCommerce products followed by product count for the category, and it will also work when search string exists.

Like,
These three categories,

Read More
  1. Laptops (5),
  2. Desktops (7),
  3. Tablets(12)

Now, if someone searches for Asus then there are 2 Laptops, 4 Desktops and 7 Tables match for Asus.

Now, In sidebar, per category will show how many products matches on the category for the search.

Currently, I am showing the counter by Default WP_Query with the tax_query parameter but it seems very slow, because if there are 50 categories, the query runs 20 times. I believe there is a better way to do this.

Can someone help me to find some easier way?

Related posts

1 comment

  1. You can get counts by terms :

    $terms = get_terms('product_cat', ['hide_empty' => false]);
    
    foreach($terms as $term){
     echo "{$term->name} ({$term->count})"
    }
    

    If you want to take only parent categories you can do it like this

    $terms = get_terms('product_cat', ['hide_empty' => false, 'parent' => 0]);

Comments are closed.