Codeschnipsel: Out-Of-Stock Filter in Collection

Collection kapseln in Magento die Zugriffe auf Daten. Mit ihnen ist es möglich Spalten zu einer Anfrage hinzuzufügen - das benötige SQL wird dann automatisch erzeugt. Mittels ein paar Helfern kann man so z.B. sich alle Produkte anzeigen lassen die z.Z. auf Lager sind.

$productCollection = Mage::getModel('catalog/product')->getCollection();
Mage::getSingleton('cataloginventory/stock')->addInStockFilterToCollection($productCollection);

foreach( $productCollection AS $product ) {
    echo $product->getSku() . " ist auf Lager\n";
}

Mit der Magento 1.4 hat sich das übrigens geändert. Die Funktion Mage::getSingleton('catalog/product_status')->addSaleableFilterToCollection($collection) ist deprecated und sollte nicht mehr verwendet werden. (Sie besitzt im übrigen aber auch gar keine Implementierung mehr)

Die Methode addInStockFilterToCollection kann exemplarisch z.B. auf die Upselling-Produkte angewendet werden so dass dort nur Produkte angeboten werden die auch wirklich lieferbar sind. Dazu kann z.B. einfach der zuständige Block verändert werden.



Ein Beitrag von Tobias Vogt
Tobias's avatar

Tobias Vogt arbeitet seit 2008 mit Magento und ist seit 2011 durch Magento zertifizierter Entwickler. Seit 2016 ist er Mitgründer und CTO bei der connect-io GmbH, einer Magento-Agentur mit Sitz im idyllischen Paderborn-Salzkotten. Er gehört zum Gründer-Team der Webguys und ist seit November 2011 Bachelor of Science (Wirtschaftsinformatik). Sie erreichen Ihn per E-Mail unter tobi@webguys.de.

Alle Beiträge von Tobias

Kommentare
Thomas Birke am

Mage::getSingleton('catalog/product_status')->addSaleableFilterToCollection($collection); is still used in Magento 1.9 (e.g. app/code/core/Mage/Adminhtml/Block/Sales/Order/Create/Search/Grid.php), although it does not do anything at least since Magento 1.1 (!):

https://github.com/OpenMage/magento-mirror/blob/magento-1.1/app/code/core/Mage/Catalog/Model/Product/Status.php

potatocommerce am

we have recently updated our extension that is designed to enhanced product filtering. now it can filter products by stock (in stock / our of stock). http://potatocommerce.com/sales-new-stock-filters-for-layered-navigation-amasty-improved.html

RoyanoLoole am

With all the funds an individual help save, an individual could probably acquire multiple coach boots or perhaps the right coach accent in which kind comments your brand-new carrier. Acquire away from time of year cheap coach shoes types. coach wallet Outlet Stores are two popular places that these smart shoppers frequent for Coach Purses on Sale. coach wallet designer clothing and accessories. Existing season’s types will probably be a high price, thus if you need a chocolates brownish coach boots, try the particular early spring.

Ralf Siepker am

Super, das kann ich auch immer mal wieder gebrauchen.

Tobias Vogt am

Aber gern Karl :)

Karl Spies am

Man und ich habe mir das manuell zusammengesucht. Danke für den Tipp.

Dein Kommentar