Holen Sie sich die URL von Variationsbild-Thumbnails in WooCommerce

Lesezeit: 2 Minuten

Ich verwende den folgenden Code, um das Bild jeder Variation für ein bestimmtes Produkt abzurufen:

$product = new WC_Product_Variable( $product_id );
$variations = $product->get_available_variations();

foreach ( $variations as $variation ) {
  echo "<img src="https://stackoverflow.com/questions/47308732/.%20$variation["image']['url'] .">";
}

Dies gibt das Bild in voller Größe zurück.

Kann mir jemand sagen, wie ich dies ändern würde, um die ‘Thumbnail’-URL zurückzugeben? (oder jede andere Größe)

Ich bin sicher, es ist eine ziemlich einfache Änderung, aber ich kann es einfach nicht herausfinden.

Verwenden Sie thumb_src anstelle von url.

$product = new WC_Product_Variable( $product_id );
$variations = $product->get_available_variations();

foreach ( $variations as $variation ) {
  echo "<img src="https://stackoverflow.com/questions/47308732/.%20$variation["image']['thumb_src'] .">";
}

  • Was wäre, wenn Sie nur die Variationsbilder anzeigen möchten? Dadurch wird auch das übergeordnete Hauptbild angezeigt …

    – NuclearApe

    13. Dezember 2017 um 12:06 Uhr

  • Dies kann daran liegen, dass Sie dasselbe Bild als übergeordnetes Produktbild und als Bild einer Variation verwenden.

    – Elvin Haci

    13. Dezember 2017 um 12:31 Uhr

Wenn Sie die Produktvariations-ID kennen, können Sie dies tun

// find out $variation_id, it's different from product_id
$variation = new WC_Product_Variation( $variation_id );
$image_tag = $variation->get_image();

// The below is the whole image tag including <img> and some classes that will help customize it.
echo $image_tag;

Siehe verwandte Dokumente in der Woocommerce-Referenz für WC_Produktvariante Klasse und die WC_Produkt Klasse. Die Funktion get_image() wird eigentlich von WC_Product geerbt, aber Sie können sie in beiden Klassen verwenden.

Holen Sie sich die URL von Variationsbild Thumbnails in WooCommerce
Arif I.

Seit WooCommerce Version 3.0.0 können Sie die ID eines Variationsbildes wie folgt erhalten:

$image_id = $variation->get_image_id();

Dadurch wird die Variationsbild-ID zurückgegeben, falls verfügbar, andernfalls wird die Hauptproduktbild-ID zurückgegeben. Ein Variationsbild kann im Produkt-Backend wie im Bild unten gefunden werden:

Geben Sie hier die Bildbeschreibung ein

Sie können diese Bild-ID dann verwenden, um die URL zu Ihrer Variation oder Ihrem Produkt-Miniaturbild wie folgt abzurufen:

$image_array = wp_get_attachment_image_src($image_id, 'thumbnail');
$image_src = $image[0];

Das Code-Snippet ist getestet und funktioniert.

Ich habe verschiedene Farben und Größen von Kleidung. Ist es möglich, die Größe wegzulassen und nur das Miniaturbild einer einzelnen Farbe anzuzeigen?

Im Moment werden Miniaturansichten für die Farbe Rot in kleiner, mittlerer und großer Größe angezeigt. Drei doppelte Thumbnails.

1003450cookie-checkHolen Sie sich die URL von Variationsbild-Thumbnails in WooCommerce

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy