Com o WooCommerce, desejo exibir todas as categorias em uma loja como títulos, com todos os produtos listados abaixo em uma lista não ordenada. Isso é possível? Eu já vi algumas coisas que me permitem exibir uma lista de categorias ou uma lista de produtos para uma categoria específica, mas nada que percorra tudo da maneira que descrevi.
Aqui está o que estou usando no momento para listar todas as categorias:
<?php
$args = array(
'number' => $number,
'orderby' => $orderby,
'order' => $order,
'hide_empty' => $hide_empty,
'include' => $ids
);
$product_categories = get_terms( 'product_cat', $args );
$count = count($product_categories);
if ( $count > 0 ){
foreach ( $product_categories as $product_category ) {
echo '<h4><a href="' . get_term_link( $product_category ) . '">' . $product_category->name . '</h4>';
}
}
?>
categories
woocommerce
JacobTheDev
fonte
fonte
foreach()
, execute um novoWP_Query()
para pegar todos os produtos nesse termo ... e depois passe por eles.Respostas:
Descobri isso! O código abaixo lista automaticamente todas as categorias e as postagens de cada categoria!
fonte
WC_Product_Query
vez deWP_Query
, em seguida, use umforeach
loop em vez de umwhile
loop. Por motivos, dê uma olhada na documentação do Github para a consulta: github.com/woocommerce/woocommerce/wiki/… , mas o essencial é:> "as consultas personalizadas do WP_Queries provavelmente quebrarão seu código nas versões futuras do WooCommerce como dados se move em direção a tabelas personalizadas para obter melhor desempenho ".