Mam zgrupowany produkt w Magento. Przed wyświetleniem elementów powiązanych z grupą chcę się upewnić, że każdy powiązany produkt nadaje się do sprzedaży. Testuję, zmieniając status „Włączone / Wyłączone” w administratorze prostego produktu.
$sku = "SKU1234"; // grouped product
$cpm = Mage::getModel("catalog/product");
$grouped_product = $cpm->load($cpm->getIdBySku($sku));
$associated = $cpm->getTypeInstance(true)->getAssociatedProducts($grouped_product);
foreach ($associated as $a_p) echo $a_p->isSaleable();
Niezależnie od statusu Wyłączone / Włączone powiązanego produktu, powyższe zawsze drukuje „1” dla każdego powiązanego produktu, podczas gdy oczekiwałbym „2” dla „Wyłączonego”.
czego mi brakuje?
Dzięki za pomoc
Odpowiedzi:
0 dla odpowiedzi № 1Czasami echo
polecenie nie działa poprawnie na stronie wyjściowej.
Spróbuj włączyć system rejestrowania w wewnętrznej bazie danych i użyj polecenia log:
Mage::log($a_p->isSaleable());
Spróbuj także zalogować tablicę $ powiązaną, aby uzyskać więcej informacji o klasie zwracanej. Może nie możesz użyć
$a_p->isSaleable();
i musisz użyć
$a_p->getProduct()->isSaleable();