Hide Categories On Shop Page

0

This free WooCommerce extension permits you to hide categories on your shops main page. For this you have to save the categories with ‘,’ seperated in woocommerce > settings >

Version
Last updated
Active installations
WordPress Version
Tested up to
PHP Version
Rating
Total ratings
Tag
This plugin is outdated and might not be supported anymore.

Description

This free WooCommerce extension permits you to hide categories on your shops main page.
For this you have to save the categories with ‘,’ seperated in woocommerce > settings > products tab section.

In order for this to work you have to have Categories displayed. This can be set via Customizer. Appearance > Customize > WooCommerce > Product Catalog.

“Choose what to display on the main shop page.” Select Show categories as seen in the Screenshot below.

Additional Information

For users who has a different/custom page for their shop you can edit the wc-hide-categories.php file
Find line # 127 and remove //

//$mwd_opt4 = in_array( 'product_cat', $taxonomies ) && ! is_admin() && is_page('YOUR_PAGE_SLUG'),

Then find line #129 /*|| $mwd_opt4*/

Change to
|| $mwd_opt4

To remove products from those categories find line 160

// Uncomment the function below if you also want those products hidden
/*
    add_action( 'woocommerce_product_query', 'mwd_hwcosp_remove_product_in_cat' );

    function mwd_hwcosp_remove_product_in_cat( $q ) {
        //hwcosp_global is the databse row entry
        $opt_terms = get_option('hwcosp_global');

        // Processes our users data to the way we want it from above
        $data = mwd_hwcosp_comma_separated_to_array($opt_terms);

        $tax_query = (array) $q->get('tax_query');
        $tax_query[] = array(
                             'taxonomy' => 'product_cat',
                             'field' => 'slug',
                             'terms' => $data, // Set Category Slug which products not show on the shop and Archieve page.
                             'operator' => 'NOT IN'
                            );
        $q->set( 'tax_query', $tax_query );
    }
*/

The code is well documented so its easy to find what part you are looking for

If you have any question please ask in the support forum, Thanks