Im Warenkorb müssen wir die Produkte in der Reihenfolge sortieren, in der sie hinzugefügt wurden, und die gruppierten Produkte müssen alphabetisch sortiert werden.
magento-1.8
shopping-cart
sorting
Poonam
quelle
quelle
Antworten:
Wir müssen dies in 2 Teilen beheben. Der erste Teil verfolgt tatsächlich, welche einfachen Produkte im Warenkorb von gruppierten Produkten stammen. Das zweite ist die Sortierung.
Zuerst für die Verfolgung. Wir werden eine zusätzliche Spalte hinzufügen
sales_flat_quote_item
, um diese Informationen zu speichern.Um dies richtig zu machen, schreiben Sie Ihr eigenes Modul, ein Tutorial dazu finden Sie hier auf Tutsplus.com .
Sie benötigen außerdem ein Installationsskript. Schauen Sie sich dieses Inchoo-Tutorial dazu an.
Fügen Sie Folgendes in Ihr Installationsskript ein
Dies ist ein einfacher 0- oder 1- Wert.
Jetzt müssen wir diesen Wert festlegen, wenn ein Produkt in den Warenkorb gelegt wird. Wir können dies mit einem Beobachter tun.
Fügen Sie Folgendes in Ihr
config.xml
Jetzt müssen wir wissen, wann dies in den Warenkorb gelegt wurde. Dies war ein gruppiertes Produkt. Wir machen das mit einem einfachen Eingabefeld im Formular " In den Warenkorb" .
Fügen Sie Folgendes in Ihr Modul-Layout-XML ein. Es wird ein Eingabefeld hinzugefügt, wenn der Produkttyp gruppiert wird.
Und eine Beobachterklasse, die das Vorhandensein der Eingabe überprüft.
Dadurch wird das Tabellenfeld
is_grouped
auf 1 gesetzt, wenn das einfache Produkt aus einem gruppierten Produkt stammt.Nun zur Sortierung! Die Blockklasse hinter dem Wagen ist die,
Mage_Checkout_Block_Cart
die wir aus unserem eigenen Modul neu schreiben müssen. Sie können dies tun, indem Sie dem Tagconfig
>global
in Ihrem Folgendes hinzufügenconfig.xml
Die
getItems
Methode kann nun die gruppierten Elemente herausfiltern und alphabetisch filternHAFTUNGSAUSSCHLUSS: Ungetesteter Code muss möglicherweise hier oder da angepasst werden, sollte aber im Allgemeinen funktionieren. Wenn nicht nur kommentieren
quelle
info_buyRequest
Option gespeichert sind :$groupedId = $item->getBuyRequest()->getData('super_product_config')['product_id']