Wyświetlaj tylko dostępne produkty w sklepie poprzez sortowanie – WooCommerce

Marzec 29, 2024
Jakub

Domyślnie w WooCommerce wyświetlane są wszystkie produkty – te na stanie i  te których brakuje na magazynie, chyba że ukryjemy to w ustawieniach magazynu klikając w opcje- nie pokazuj niedostępnych produktów. Co jednak jeśli chcemy  zachować wszystkie produkty ale filtrować je poprzez wyświetlenie jedynie dostepnych w danej chwili ?

sklep-woocommerce-sortuj-pokaz-tylko-dostepne-produkty

Wystarczy prosty kod w pliku functions.php naszego szablonu. Dzięki niemu na stronie dodamy opcje sortowania pokazujące tylko dostepne na stanie produkty. Jest to bardzo przydatne gdy większość produktów nie ma na stanie a klient bulwersuje się widąc stan dopiero po wejściu w dany produkt.

add_filter( 'woocommerce_catalog_orderby', 'custom_woocommerce_catalog_orderby' );
function custom_woocommerce_catalog_orderby( $sortby ) {
$sortby['in_stock'] = 'Dostępne produkty';
return $sortby;
}

Krok 2: Modyfikowanie zapytania na podstawie opcji sortowania

Następnie, użyjemy hooka woocommerce_product_query do zmodyfikowania zapytania, kiedy użytkownik wybierze nową opcję sortowania:

//  Display only available products in the store by sorting - WooCommerce
add_action( 'woocommerce_product_query', 'custom_woocommerce_product_query' );
function custom_woocommerce_product_query( $q ){
$orderby = isset( $_GET['orderby'] ) ? wc_clean( wp_unslash( $_GET['orderby'] ) ) : '';
if ( 'in_stock' == $orderby ) {
$q->set( 'meta_key', '_stock_status' );
$q->set( 'meta_value', 'instock' );
}
}

Jeśli potrzebujesz pomocy z kodem lub masz inny problem związany z programowaniem, szukasz niestandardowego rozwiązania, napisz do nas a na pewno znajdziemy rozwiązanie – Kontakt

Udostępnij

Brak komentarzy

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Zaakceptuj politykę prywatności.

Więcej w WooCommerce
10 zalet systemu WordPress jako platformy do sprzedaży internetowej

Opisujemy 10 najważniejszych zalet systemu WordPress jako platformy do sprzedaży internetowej.

Zamknij