我开发了一个自定义结帐模块并且工作正常。在第一次结帐时,当我输入新的账单和送货地址时,它们被设置为默认账单和送货地址,这很好。现在,我有一个要求,每当输入新的送货地址时,这应该成为默认送货地址。不知何故,我无法完成这项工作。我尝试了以下方法:
$shipdata 是一个包含新地址详细信息的数组。
$shipAddress = $this->getQuote()->getShippingAddress();
$shipAddress->addData($shipdata);
$shipAddress->setIsDefaultShipping(true);
if($this->getQuote()->getDefaultShipping()) {
$this->getQuote()->setData('default_shipping', '');
$this->getQuote()->addAddress($shipAddress);
}
$this->getQuote()->collectTotals();
$this->getQuote()->save();
我还尝试在 $shipdata 中添加以下内容
$shipdata['default_shipping'] = 1;
但也没有帮助。有人可以在这方面提供帮助吗?