Rufen Sie die Artikelmenge im Warenkorb nach Artikel-ID in Woocommerce ab

Lesezeit: 2 Minuten

Benutzer-Avatar
ranjit

In WooCommerce habe ich einen Mini-Warenkorb erstellt und möchte die im aktuellen Warenkorb verfügbare Artikelmenge erhalten.

Da ich das versucht habe:

  $items = $woocommerce->cart->get_cart();

      foreach($items as $item => $values) {
          $product_id = $values['product_id'];
          if ( $product_id == $id ){
            $product_qnty = $values['quantity'];
          }
          break;
      }

Gibt es eine einzelne Funktion, um die Menge des Warenkorbartikels nach Warenkorbartikel abzurufen?

  • Ich habe gerade ein Update erstellt, das sich auch um variable Produkte (Produktvariationen) kümmert (nach einigen weiteren Tests). Wenn Sie möchten, können Sie diese Antwort auch positiv bewerten. Vielen Dank.

    – LoicTheAztec

    28. Oktober 2017 um 13:56 Uhr

Benutzer-Avatar
LoicTheAztec

Vielleicht sollten Sie zuerst in die schauen WooCommerce-Vorlagencode cart/mini-cart.php wo Sie den offiziellen zugehörigen Code finden.

Hinweis: Die “Artikel-ID” ist nur in der WC_Orders-Artikelschleife verfügbar, nicht jedoch in WC_Cart, das ein “Warenkorb-Artikelschlüssel” ist. Sie sprechen also sicherlich von der Produkt-ID. Wenn Sie sich jedoch den Code der offiziellen Vorlage cart/mini_cart ansehen, müssen Sie die verwenden WC_Product Objekt statt der $product_id

Sie können also jederzeit eine benutzerdefinierte Funktion wie z (mit einer $product Argument, das WC_Product-Objekt) die Sie im entsprechenden Vorlagencode oder in Ihrem benutzerdefinierten Code verwenden können:

function get_item_qty( $product ){
    foreach( WC()->cart->get_cart() as $cart_item )
        // for variable products (product varations)
        $product_id = $product->get_parent_id();
        if( $product_id == 0 || empty( $product_id ) )
            $product_id = $product->get_id();

        if ( $product_id == $cart_item['product_id'] ){
            return $cart_item['quantity'];
            // break;
        }
    return;
}

Code geht in die function.php-Datei Ihres aktiven Child-Themes (oder Themes) oder auch in jede Plugin-Datei.


VERWENDUNGSZWECK (Beispiel): Hier geben wir die Menge der aus $product (WC_Product Objekt):

// Output the quantity based on the $product object
echo __('Quantity'). ': ' . get_item_qty( $product );

Offizielle Dokumentation: Vorlagenstruktur + Überschreiben von Vorlagen über ein Design

1073760cookie-checkRufen Sie die Artikelmenge im Warenkorb nach Artikel-ID in Woocommerce ab

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

Privacy policy