Gostaria de exibir 6 produtos em destaque da minha loja de woocommerce no meu modelo home-page.php. Depois de pesquisar, descobri que a maneira certa de fazer isso era através de um loop personalizado (não desejo usar códigos de acesso porque gostaria de adicionar classes adicionais para estilizar etc.). Também descobri que a chave que o woocommerce usa para o os produtos em destaque são '_featured'. Eu montei o código abaixo para exibir todos os produtos que eu escolhi para serem destacados em minha loja, mas não funciona ... Qualquer ajuda é apreciada.
<?php
$args = array(
'post_type' => 'product',
'stock' => 1,
'showposts' => 6,
'orderby' => 'date',
'order' => 'DESC' ,
'meta_query' => array(
array(
'key' => '_featured',
'value' => 0,
'compare' => '>',
'type' => 'numeric'
)
)
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>
<li>
<?php
if ( has_post_thumbnail( $loop->post->ID ) )
echo get_the_post_thumbnail( $loop->post->ID, 'shop_catalog' );
else
echo '<img src="' . woocommerce_placeholder_img_src() . '" alt="Placeholder" width="65px" height="115px" />';
?>
<h3><?php the_title(); ?></h3>
<?php
echo $product->get_price_html();
woocommerce_template_loop_add_to_cart( $loop->post, $product );
?>
</li>
<?php
endwhile;
wp_reset_query();
?>
var_dump( get_meta_values( '_featured', 'product' );
onde a funçãoget_meta_values
é suportada pela função personalizada explicado em esta resposta