Skip to content

Instantly share code, notes, and snippets.

@psahalot
Last active August 29, 2015 14:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save psahalot/7b3371cc9bfacc1f9e38 to your computer and use it in GitHub Desktop.
Save psahalot/7b3371cc9bfacc1f9e38 to your computer and use it in GitHub Desktop.
Hide out of stock products from category archives in WooCommerce
<?php
// Do not include the opening tag
add_action( 'pre_get_posts', 'custom_pre_get_posts_query' );
function custom_pre_get_posts_query( $q ) {
if ( ! $q->is_main_query() ) return;
if ( ! $q->is_post_type_archive() ) return;
if ( ! is_admin() ) {
$q->set( 'tax_query', array(array(
'taxonomy' => 'product_cat',
'field' => 'slug',
'terms' => array( 'PUT YOUR CATEGORY HERE' ), // Don't display products in the membership category on the shop page . For multiple category , separate it with comma.
'operator' => 'NOT IN'
)));
$q->set( 'meta_query', array(array(
'key' => '_stock_status',
'value' => 'outofstock',
'compare' => 'NOT IN'
)));
}
remove_action( 'pre_get_posts', 'custom_pre_get_posts_query' );
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment