In Magento CE1.9 / EE1.13 scheint ein Fehler mit "Weitere Regelverarbeitung stoppen" aufgetreten zu sein, bei dem nur der erste Artikel in Ihrem Warenkorb den Rabatt erhält.
Ich würde erwarten: Wenn ich mehrere Warenkorbregeln habe, von denen jede "Weitere Regelverarbeitung stoppen: Ja" enthält, wird nur die erste dieser Regeln angewendet, jedoch vollständig auf alle übereinstimmenden Artikel für diese Regel.
Was passiert: Der Rabatt wird nur auf den ersten Artikel im Warenkorb angewendet, wonach die Regelverarbeitung gestoppt wird.
Siehe Screenshots: Der Rabatt, den ich für den gesamten Warenkorb erwarte, beträgt 50 US-Dollar, aber aufgrund von "Weitere Regelverarbeitung stoppen" werden nur 25 US-Dollar angezeigt.
quelle
Dies wurde in einer späteren Version von Magento CE behoben. In 1.9.2.1 finden Sie die Lösung, die jedoch möglicherweise früher behoben wurde.
Der ursprüngliche Code sieht folgendermaßen aus:
Und der feste Code sollte sein:
Der Unterschied ist das
$this->_stopFurtherRules = false;
undif ($this->_stopFurtherRules) {...}
Nichts anderes.
Wenn Sie mit 1.9 arbeiten, können Sie einfach die gesamte Datei ohne Gefahr ersetzen.
Hoffe das hilft jemandem.
quelle
Für alles, was dieses Problem beheben muss, sollte die Prozessmethode für die Mage_SalesRule_Model_Validator-Klasse wie folgt überschrieben werden
quelle