【发布时间】:2011-10-16 11:22:17
【问题描述】:
我正在尝试根据用户来自“填写注册表”的位置在产品价格上添加折扣。
我正在考虑通过钩子获取数据“状态”,并根据获取的数据更改折扣。
我不知道在哪里可以设置价格的价值。
我认为这些规则不会有太大帮助,因为它们都在添加很多条件。
【问题讨论】:
我正在尝试根据用户来自“填写注册表”的位置在产品价格上添加折扣。
我正在考虑通过钩子获取数据“状态”,并根据获取的数据更改折扣。
我不知道在哪里可以设置价格的价值。
我认为这些规则不会有太大帮助,因为它们都在添加很多条件。
【问题讨论】:
我仍然相信定价规则是必经之路。
显然,您不能为每个状态设置条件,因为这会导致混乱。我的建议是设置一个包含两列的新表:State 和 Discount。在表格中填入项目所需的数据。
设置新的定价规则(商店 -> 配置 -> 产品定价规则 -> 列表 -> 添加)。跳过条件部分。在 Actions 部分,获取用户的 State 数据并将其作为变量提供。然后添加一个 PHP 操作来查询表以获得相关折扣。使用第三个操作将价格设置为检索到的折扣,或者如果没有返回结果,则设置为原始值。
使用以下代码将此逻辑包装在一个整洁的模块中可能是一种好习惯:
(然后,您可以在定价规则的条件下使用上面的第 3 项,仅在找到折扣时更改价格。)
希望对您有所帮助。祝你好运!
【讨论】: