2021-07-26By Jose Luis Iñigo (Riskoo)

Si necesitas quitar del listado de productos de woocomerce los productos sin stock, utiliza este plugin.

También podrías usar el snipet que aparece justo abajo.

Descarga el plugin desde aqui: https://joseluisinigo.work/pluginspropios/nomostrarproductos0stock.zip

Si no quieres el plugin y quieres el snipet , aquí lo tienes.

add_action( 'pre_get_posts', 'ayudawp_ocultar_agotados' );

function ayudawp_ocultar_agotados( $q ) {

    if ( ! $q->is_main_query() || is_admin() ) {
        return;
    }

    if ( $outofstock_term = get_term_by( 'name', 'outofstock', 'product_visibility' ) ) {

        $tax_query = (array) $q->get('tax_query');

        $tax_query[] = array(
            'taxonomy' => 'product_visibility',
            'field' => 'term_taxonomy_id',
            'terms' => array( $outofstock_term->term_taxonomy_id ),
            'operator' => 'NOT IN'
        );

        $q->set( 'tax_query', $tax_query );

    }

    remove_action( 'pre_get_posts', 'ayudawp_ocultar_agotados' );

}