Saya ingin menampilkan 6 produk unggulan dari toko woocommerce saya di templat home-page.php saya. Setelah beberapa penelitian saya menemukan bahwa cara yang tepat untuk melakukan ini adalah melalui loop kustom, (Saya tidak ingin menggunakan shortcode karena saya ingin menambahkan kelas tambahan untuk styling dll.) Saya juga menemukan bahwa kunci yang digunakan woocommerce untuk produk unggulan adalah '_featured'. Saya mengumpulkan kode di bawah ini untuk menampilkan produk apa pun yang saya pilih untuk menjadi produk unggulan di toko saya, tetapi tidak berfungsi ... Bantuan apa pun dihargai.
<?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();
?>
loop
woocommerce
featured-post
Steamfunk
sumber
sumber
var_dump( get_meta_values( '_featured', 'product' );
mana fungsiget_meta_values
didukung oleh fungsi kustom yang dijelaskan dalam jawaban iniJawaban:
Ubah args Anda menjadi seperti ini:
Jika Anda pergi ke wp-content / plugins / woocommerce / include / class-wc-shortcodes.php (@ 595) Anda dapat menemukan cara melakukannya untuk shortcode WC.
sumber
Ini telah berubah di WooCommerce 3.0. Ini bukan hanya meta_query, tetapi sekarang termasuk tax_query. Argumennya sekarang:
Lihat woocommerce / include / class-wc-shortcodes.php
sumber
wc_placeholder_img_src
bukanwoocommerce_placeholder_img_src
.Produk Unggulan Loop di WooCommerce 3
sumber
Menurut WooCommerce Wiki :
Pendukung WooCommerce menggunakan
wc_get_products()
atauWC_Product_Query()
bukannyaWP_Query()
atauget_posts()
.Saya telah menulis posting dengan kode yang saya gunakan untuk mencapai apa yang Anda inginkan di sini: https://cfxdesign.com/create-a-custom-woocommerce-product-loop-the-right-way/
sumber
Saya tahu ini cukup lama, tetapi saya baru saja berbagi solusi alternatif di sini dan saya pikir ini dapat membantu mereka yang mencapai topik ini juga.
Alih-alih menggunakan
meta_query
atautax_query
, Anda dapat menggunakan wc_get_featured_product_ids () juga:Saya harap ini membantu!
sumber
Didasarkan pada: https://github.com/woocommerce/woocommerce/wiki/wc_get_products-and-WC_Product_Query
Aku akan mencoba:
lingkaran luar:
dalam lingkaran:
sumber
jika anda melihat dalam database di
wp_postmeta
meja Anda akan melihatmeta_key
akan_featured
danmeta_value
akanyes
atauno
jadi bukan nilai0
atau1
menulisyes
atauno
sumber
sumber