Magento - 仅针对此会话更改引号中的项目属性值


Magento - change item attribute value in quote just for this session

我正在为某事而苦苦挣扎,感谢您的帮助。在Magento 1.7中:用户将产品添加到购物车> 我正在运行观察器并检查一些数据,>我只想更改该用户会话的产品属性值。

例如:用户添加属性为 some_text = "示例" 的 T 恤,现在我正在检查一个条件,如果为真,我想将some_text更改为"其他示例"。但仅针对该用户,我不想将其保存到产品本身。

我试过了:

   foreach ($quote->getAllItems() as $item) {
        if (some_condition) {
            $item->getProduct()->setSomeText('other example')->save();
        }
    }

但这会将属性保存到产品中,并影响所有其他用户

您确实需要为此使用自定义选项。或者也许是一个Magento可配置的产品。

您可以将自定义选项设置为文本字段,然后在页面加载时或"添加到购物车"或任何时候检查"某些数据"时,使用 jQuery 脚本填充它。

我认为您不会以上面概述的方式成功更新属性。

我希望这有所帮助。