Ich möchte 6 vorgestellte Produkte aus meinem Woocommerce-Shop auf meiner Homepage.php-Vorlage anzeigen. Nach einigen Recherchen stellte ich fest, dass der richtige Weg dies über eine benutzerdefinierte Schleife zu tun war (ich möchte keine Shortcodes verwenden, da ich zusätzliche Klassen für das Stylen usw. hinzufügen möchte) Empfohlene Produkte ist '_featured'. Ich habe den folgenden Code zusammengestellt, um alle Produkte anzuzeigen, die ich als empfohlene Produkte in meinem Shop ausgewählt habe, aber es funktioniert nicht ... Jede Hilfe wird gebeten.
<?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
quelle
quelle
var_dump( get_meta_values( '_featured', 'product' );
dem aus die Funktionget_meta_values
von der in dieser AntwortAntworten:
Ändere deine Argumente so:
Unter wp-content / plugins / woocommerce / includes / class-wc-shortcodes.php (@ 595) können Sie nachlesen, wie dies für WC-Shortcodes gemacht wird.
quelle
Dies hat sich in WooCommerce 3.0 geändert. Es ist nicht nur eine meta_query, sondern enthält jetzt eine tax_query. Die Argumente sind jetzt:
Siehe woocommerce / includes / class-wc-shortcodes.php
quelle
wc_placeholder_img_src
anstelle vonwoocommerce_placeholder_img_src
.Vorgestellte Produkte Loop in WooCommerce 3
quelle
Laut dem WooCommerce Wiki :
WooCommerce befürwortet die Verwendung von
wc_get_products()
oderWC_Product_Query()
anstelle vonWP_Query()
oderget_posts()
.Ich habe einen Beitrag mit dem Code geschrieben, mit dem ich erreicht habe, was Sie hier wollen: https://cfxdesign.com/create-a-custom-woocommerce-product-loop-the-right-way/
quelle
Ich weiß, dass dies ziemlich alt ist, aber ich habe hier gerade eine alternative Lösung vorgestellt , und ich denke, dies kann auch denjenigen helfen, die dieses Thema erreichen.
Anstelle von
meta_query
odertax_query
können Sie auch wc_get_featured_product_ids () verwenden :Ich hoffe, es hilft!
quelle
Basierend auf: https://github.com/woocommerce/woocommerce/wiki/wc_get_products-and-WC_Product_Query
Ich würde versuchen:
Außenschleife:
in der Schleife:
quelle
wenn Sie einen Blick in die Datenbank aufnehmen
wp_postmeta
Tabelle werden Sie sehen ,meta_key
wird_featured
undmeta_value
wird seinyes
oderno
so statt Wert0
oder1
Schreibyes
oderno
quelle
quelle