Come interrogare solo i prodotti con stato "in stock" in WooCommerce?
2 apr 2017, 04:51:36
Visualizzazioni: 17.1K
Voti: 6
Sto cercando di costruire una query che recuperi solo i prodotti disponibili in magazzino all'interno di una determinata categoria di prodotti.
Ecco il mio codice funzionante dove recupero tutti gli articoli nella categoria e poi devo scorrere finché non verifico che ce ne sia uno disponibile:
function CheckCategoryStock( $catToCheck ) {
$args = array(
'posts_per_page' => -1, // Recupera tutti i prodotti
'post_type' => 'product', // Tipo post: prodotti
'hide_empty' => 1, // Nascondi categorie vuote
'product_cat' => $catToCheck, // Categoria specifica
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while ( $query->have_posts() ) : $query->the_post();
global $product;
if ( $product->is_in_stock() ) { // Verifica disponibilità
$catCounter = 0;
return 1; // Trovato prodotto disponibile
}
endwhile;
}
return 0; // Nessun prodotto disponibile
}
Questo approccio funziona, ma a volte il codice risulta lento perché deve scorrere molti prodotti prima di trovarne uno disponibile.

user116737
69
Commenti
Tutte le risposte alla domanda
1
Domande correlate
3
risposte