Saya mendengarkan sales_quote_save_sebelum acara memperhatikan ketika item ditambahkan ke troli. Setelah dipecat, saya beralih melalui opsi item seperti ini:
$quote = $observer->getEvent()->getQuote();
foreach ($quote->getAllItems() as $item) {
$options = $item->getProduct()->getTypeInstance(true)->getOrderOptions($item->getProduct());
foreach($options['options'] as $option) {
if($option['label'] == 'myOptionA') {
// Here I want to change the selected value for the option
}
}
}
Seperti yang Anda lihat, segera setelah opsi tertentu (myOptionA dalam contoh) tercapai, saya ingin mengubah opsi yang dipilih. Jadi katakanlah myOptionA adalah drop down dan memiliki 4 nilai yang mungkin. Jika nilai 1 dipilih, saya ingin menetapkan nilai 4 untuk item itu. Jadi, ketika kereta selesai memuat, ia harus memiliki nilai 4 untuk myOptionA. Bukan hanya namanya, tapi harganya juga. Bagaimana saya bisa melakukan itu?