Mostrare solo una categoria nello shop

Mostrare solo una categoria nello shop

Oggi ho testato uno snippet per un cliente che ha un sito realizzato con WooCommerce.

L’obiettivo che si vuol raggiungere è quello di mostrare, nella pagina Shop del nostro sito, soltanto i prodotti appartenti ad una specifica categoria. Questo può essere utile per esempio qualora il cliente voglia mettere in risalto solo certi tipi di prodotti e celarne altri.

Cercando una soluzione trovo e applico lo snippet realizzato da Rodolfo Melogli risolvendo in breve il “problema”.

Integrare questo codice nel file functions.php del vostro tema child.

/**
 * @snippet       Show Unique Category @ Shop Page
 * @how-to        Watch tutorial @ http://businessbloomer.com/?p=19055
 * @sourcecode    http://businessbloomer.com/?p=19928
 * @author        Rodolfo Melogli
 * @testedwith    WooCommerce 2.5.2
 */

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() && is_shop() ) {

        $q->set( 'tax_query', array(array(
            'taxonomy' => 'product_cat',
            'field' => 'slug',
            'terms' => array( 'black' ), // change 'black' with your cat slug
            'operator' => 'IN'
        )));

    }

    remove_action( 'pre_get_posts', 'custom_pre_get_posts_query' );

}

Per eventuali necessità, lasciate un vostro commento!

Buon lavoro 😉

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Torna in alto