Woher kann ich wissen, ob ein gruppierter Produkt Kartenprodukte enthält?
-
16-10-2019 - |
Frage
Grundsätzlich muss ich wissen, ob ein gruppiertes Produkt ein Karten -Subprodukt enthält.
Ist es möglich, diese Informationen zu erhalten, ohne alle damit verbundenen Produkte zu laden?
Lösung
Sie müssen also überprüfen, ob eines der gruppierten Produkte einen Kartensatz hat? Sie möchten nicht alle Produkte laden, da dies langsam sein kann.
Der einfachste Vorschlag, den ich habe, ist, alle IDs mit zu sammeln
$ids = $product->getTypeInstance(true)->getAssociatedProductIds($product);
Dann können Sie verwenden
Mage::getResourceModel('catalog/product')->getAttributeRawValue($productId, 'attribute_code', $storeId);
Setzen Sie es zusammen. 'attribute_code'
=> Der Code des erforderlichen Attributs && $storeId
$ids = $product->getTypeInstance(true)->getAssociatedProductIds($product);
foreach($ids as $id){
$wantedAttribute = Mage::getResourceModel('catalog/product')->getAttributeRawValue($id, 'attribute_code', $storeId);
if(SOME_CHECK){
DOSOMETHING;
}
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange