Created

Embed URL

HTTPS clone URL

SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

WooCommece - Exclude a category from shop page

View functions.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
<?php
/**
* This code should be added to functions.php of your theme
**/
add_filter( 'parse_query', 'custom_parse_query' );
function custom_parse_query( $q ) {
if ( !$q->is_post_type_archive() ) return;
$q->set( 'tax_query', array(array(
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => array( 'tshirts' ),
'operator' => 'NOT IN'
)));
remove_filter( 'parse_query', 'custom_parse_query' );
}
?>

I tried it, but doesn't work. Any suggestions?

Owner

Fraid not. Should work. Did you get the slug right? Post on our forum if you're stuck; http://www.woothemes.com/support-forum/?viewforum=150

It works! but it excludes all the products of the selected category from the back-end too! any idea?!

Owner

Try adding an if (!is_admin) query around the remove_filter line.

fffffast! it works! but i've to put the '!is_admin' query around the whole function: if (!is_admin()){....}
Thanks for your help jameskoster!

This does work, but when I use the Product Category Shortocde [product_category category="test-category-name" per_page="9" columns="3" orderby="date" order="desc"]

The Products from the specified category do NOT list, instead products from another category display, without pagination ..

Any ideas?

thank you

could anyone pretty please see about getting this to work again, since last update this code no longer works. .i still see all categories on the home/shop page

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.