Magento: Wie abrufen der minimal-Preis von (z.B.) gruppiert Produkte?

Ich versuche die Anzeige ein gruppiertes Produkt den Preis auf der Produkt-Ansicht-Seite in Magento 1.7.0.2, so wie es angezeigt wird in der Kategorie Produkt-listing ("Ab: xx.xx"). Ich dachte, ich konnte einfach

$this->getPriceHtml($_product, true);

zu tun, weil es funktioniert auf die gleiche Art und Weise, in der Kategorie Produkt-Auflistung, aber wie alles, was ich versuchte zu tun, Magento, ist es nicht so einfach, weil diese Methode nicht alles zurückzugeben, was Sie auf der Produkt-Seite anzeigen.

Ich schaute mich ein wenig tiefer in Magento code und herausgefunden, dass die Ursache für diese problem ist das Produkt der minimale Preis Daten nicht festgelegt auf die Produkt-Ansicht-Seite ($_product->getMinimalPrice() gibt null zurück).

Daher habe ich einige der Forschung auf, wie das laden eines Produktes minimaler Preis das brachte Ideen wie

$_product->getPriceModel()->getMinimalPrice($_product);

was aber nicht funktioniert, weil offenbar, dass die Methode veraltet ist und entfernt in einem der letzten updates oder

$priceModel = Mage::getResourceModel('catalogindex/price');
$priceModel->setStoreId(Mage::app()->getStore()->getId());
$priceModel->setCustomerGroupId(Mage::getSingleton('customer/session')->getCustomerGroupId());

$minimalPrices = $priceModel->getMinimalPrices(array($_product->getId()));
$minimalPrice = $minimalPrices[0];
$_product->setData('minimal_price', $minimalPrice['value']);
$_product->setData('minimal_tax_class_id', $minimalPrice['tax_class_id']);

was aber nicht funktionieren, weil die Tabelle 'catalogindex_minimal_price' ist leer.

Also meine Frage ist, wie Magento laden Sie den minimalen Preis in der Kategorie Produkt-listing?

  • Ich habe etwas mehr Forschung. Bei der Anzeige der Produkt-listing, Produkt-Kollektion geladen, Mage_Catalog_Model_Layer wodurch der minimale Preis und andere Sachen, um es durch hinzufügen von Verknüpfungen zu der Sammlung von SQL, aber ich habe noch nicht ein Modell gefunden, dass nicht die gleiche Sache auf einzelne Produkte. Weil ich nicht wirklich wollen, um eine direkte SQL-Abfrage, ich habe die CatalogIndex Modul, aber das Modul scheint nicht zu funktionieren, weil alle seine Indizierung von Tabellen leer sind. Das Modul ist entweder veraltet oder bin ich einfach zu blöd, um es zu aktivieren.
InformationsquelleAutor Subsurf | 2012-08-21
Schreibe einen Kommentar