Ändern Sie die Farbe der „Verfügbarkeit: auf Lager“ abhängig von der Menge der Aktie?

magento.stackexchange https://magento.stackexchange.com/questions/8469

  •  16-10-2019
  •  | 
  •  

Frage

Ich habe die Farbe der "Verfügbarkeit: in Lager" in Grün verändert, aber ich möchte die Farbe "Verfügbarkeit: auf Lager" ändern. Zum Beispiel

Wenn die Produktmenge> 5 und die Produktmenge <10, möchte ich "Verfügbarkeit: auf Lager" in Orange färben

Wenn die Produktmenge> 5 und die Produktmenge <10, möchte ich "Verfügbarkeit: in Lager" in Grün färben

War es hilfreich?

Lösung

Sie können das verfügbare Qty so erhalten

$qty = $_product->getStockItem()->getQty();

Aber du musst vorsichtig sein. Sie können Produkte haben, bei denen die obige Linie 0 zurückgibt, aber das Produkt ist auf Lager, weil Manage stock ist eingestellt auf No.
Um diese Verwendung zu überprüfen:

$manageStock = $_product->getStockItem()->getManageStock();

$manageStock = $_product->getStockItem()->getManageStock();

if (!$manageStock) { 
    $color = 'green'; //forever in stock
}
else {
    $qty = $_product->getStockItem()->getQty();
    if ($qty < 5){
        $color = 'red';
    }
    elseif ($qty < 10) {
        $color = 'orange';
    }
    else {
        $color = 'green';
    }
}

BEARBEITEN
Ändern Sie nun das Element, das die Verfügbarkeit darstellt:

<p class="availability in-stock <?php echo $color?>">

und fügen Sie dies Ihrer CSS -Datei hinzu

p.green{color:green}
p.orange{color:orange}
p.red{color:red}

Hinweis: Dies funktioniert für einfache Produkte.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top