Apresentar produtos apresentados através do loop personalizado no woocommerce na página do modelo

Eu queria saber se alguém poderia me ajudar. Gostaria de exibir 6 produtos apresentados da minha loja woocommerce no meu modelo home-page.php. Depois de alguns pesquisados, descobri que a maneira correta de fazer isso era através de um ciclo personalizado, (não quero usar shortcodes porque gostaria de adicionar classs adicionais para o estilo etc.) Eu também achei que a chave que o woocommerce usa para o Os produtos em destaque são ‘_featured’. Eu coloquei o código abaixo, mas não parece exibir nenhum produto que eu escolhi ser produtos em destaque na minha loja. Estou fazendo algo errado aqui, mas não consigo descobrir o que é. Gostaria muito de apreciar se alguém pudesse dar uma olhada e apontá-lo. obrigado

 '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; ?> 
  • post->ID ) ) echo get_the_post_thumbnail( $loop->post->ID, 'shop_catalog' ); else echo 'Placeholder'; ?>

    get_price_html(); woocommerce_template_loop_add_to_cart( $loop->post, $product ); ?>
  • Solutions Collecting From Web of "Apresentar produtos apresentados através do loop personalizado no woocommerce na página do modelo"

    Mude seus args para ser assim:

     $meta_query = WC()->query->get_meta_query(); $meta_query[] = array( 'key' => '_featured', 'value' => 'yes' ); $args = array( 'post_type' => 'product', 'stock' => 1, 'showposts' => 6, 'orderby' => 'date', 'order' => 'DESC', 'meta_query' => $meta_query ); 

    Se você for para wp-content / plugins / woocommerce / includes / class-wc-shortcodes.php (@ 595), você pode descobrir como é feito para códigos curtos do WC.

    Isso mudou no WooCommerce 3.0. Não é simplesmente uma meta_query, mas agora inclui uma tax_query. Os argumentos são agora:

      $meta_query = WC()->query->get_meta_query(); $tax_query = WC()->query->get_tax_query(); $tax_query[] = array( 'taxonomy' => 'product_visibility', 'field' => 'name', 'terms' => 'featured', 'operator' => 'IN', ); $args = array( 'post_type' => 'product', 'post_status' => 'publish', 'ignore_sticky_posts' => 1, 'posts_per_page' => $atts['per_page'], 'orderby' => $atts['orderby'], 'order' => $atts['order'], 'meta_query' => $meta_query, 'tax_query' => $tax_query, ); 

    Veja woocommerce / includes / class-wc-shortcodes.php

    Loop de produtos em destaque no WooCommerce 3

     
      < ?php $args = array( 'post_type' => 'product', 'posts_per_page' => 12, 'tax_query' => array( array( 'taxonomy' => 'product_visibility', 'field' => 'name', 'terms' => 'featured', ), ), ); $loop = new WP_Query( $args ); if ( $loop->have_posts() ) { while ( $loop->have_posts() ) : $loop->the_post(); wc_get_template_part( 'content', 'product' ); endwhile; } else { echo __( 'No products found' ); } wp_reset_postdata(); ?>

    Se você der uma olhada no database na tabela wp_postmeta você verá que a meta_key será _featured e o meta_value será yes ou no então em vez do valor 0 ou 1 escreva yes ou no

     < ?php $q = new WP_Query([ 'post_type' => 'product', 'stock' => 1, 'showposts' => 3, 'orderby' => 'date', 'order' => 'DESC', 'meta_query' => [ ['key' => '_featured', 'value' => 'yes' ] ] ]); if ( $q->have_posts() ) : while ( $q->have_posts() ) : $q->the_post(); // display product info endwhile; wp_reset_query(); endif; ?>