Tampaknya ada bug dengan "Hentikan Pemrosesan Aturan Lebih Lanjut" di Magento CE1.9 / EE1.13 di mana hanya item pertama di keranjang Anda yang menerima diskon.
Saya berharap: Jika saya memiliki beberapa aturan keranjang belanja, yang masing-masing memiliki "Hentikan Pemrosesan Aturan Lebih Lanjut: Ya", hanya yang pertama dari aturan ini yang akan diterapkan, namun itu akan diterapkan secara penuh ke semua item yang cocok untuk aturan itu.
Apa yang terjadi: Diskon hanya diterapkan ke item pertama dalam troli, setelah itu pemrosesan aturan dihentikan.
Lihat tangkapan layar: Diskon yang saya harapkan untuk seluruh keranjang adalah $ 50, tetapi karena "Hentikan Pemrosesan Aturan Lebih Lanjut" Saya hanya melihat $ 25.
sumber
Ini diperbaiki dalam versi Magento CE yang lebih baru. Di 1.9.2.1 Anda dapat menemukan solusinya, tetapi mungkin sudah diperbaiki lebih cepat.
Kode aslinya terlihat seperti ini:
Dan kode tetapnya harus:
Perbedaannya adalah
$this->_stopFurtherRules = false;
danif ($this->_stopFurtherRules) {...}
Tidak ada lagi.
Atau, jika Anda berada di 1.9 Anda dapat dengan mudah mengganti seluruh file tanpa bahaya.
Semoga ini bisa membantu seseorang.
sumber
Untuk semua yang perlu memperbaiki masalah itu, harus menimpa metode proses untuk kelas Mage_SalesRule_Model_Validator menjadi seperti di bawah ini
sumber