2
カートに追加するときにアイテムのカスタムオプションを変更しますか?
アイテムがカートに追加されたときに通知するために、sales_quote_save_beforeイベントを聞いています。起動したら、次のようなアイテムオプションを繰り返し処理します。 $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 } } } ご覧のとおり、特定のオプション(例ではmyOptionA)に達したらすぐに、選択したオプションを変更したいと思います。したがって、myOptionAがドロップダウンであり、4つの可能な値があるとします。値1を選択した場合、その項目に値4を設定します。したがって、カートの読み込みが完了すると、myOptionAの値は4になります。その名前だけでなく、その価格も。どうすればできますか?