Prestashop定制/计算产品价格

我有帆布横幅打印网站。 我希望客户输入宽度和高度,并使用我自己的自定义表格进行计算并显示价格。 现在我想将计算价格转移到购物车,并从那里转到订单生成。 我检查了prestashop表的购物车,但它存储产品ID并加入产品表以获取价格。 无论如何要达到我的要求吗?


此功能在prestashop中默认不可用,我现在不知道任何模块,可以在不超载核心功能的情况下执行此操作。 我只为您提供理论和一些文件参考。 请尝试。

让我们考虑以下一般假设:

a)测量单位是英寸。

b)每英寸价格是5美元

c)您还需要一个价格计算公式,对于这个例子来说是这样

finalPrice = width x height x 5  //width and height are formula variables

现在,对于prestashop,您可以执行以下步骤:

1)更新购物车表格并添加三个字段,宽度,高度和最终价格。 (字段的数量可能会根据您的公式变量而有所不同。)

2)重载车类并为宽度,高度和最终价格添加属性。 您还需要重写从购物车获取所有产品的方法,并检查购物车产品是否具有自定义价格或宽度和高度。 所有的税收,运费也可以在那里适用。

3)如果您使用ajax添加到购物车功能,那么您需要稍微修改一下blockcart模块。 您可能需要修改ajax-cart.js以获取宽度,高度和最终价格值以发布到购物车控制器。 此外,blockcart-json.tpl可能需要一些修改,因为此文件用于填充购物车块内容。 你也可能需要修改blockcart.tpl文件,你可以在其中显示宽度和高度等。 这样你就可以在blockcart中显示变量。

4)现在下一步实际上是将产品添加到购物车。 数据发布到CartController,因此您需要覆盖它,并从发布的数据接收宽度,高度和最终价格。 如果宽度,高度和最终价格可用,您将需要进行适当的检查以检测定制价格产品。

5)您将需要覆盖OrderController以使用宽度,高度和最终价格填充购物车页面产品列表。

6)在所有上述理论中,我们已经将产品添加到购物车和填充的购物车以及包含宽度,高度和最终价格数据的购物车页面。 下一步是完成订单。 为此,您需要使用订单类,订单控制器和购物车类。 和order_product表。 在产品表中添加与cart_products表中的宽度,高度和final_price相同的字段。 然后修改订单类并将这些属性添加到订单类中。

7)您将需要重写PaymentModule类并在validateOrder方法中进行更改。 此方法处理您在订购步骤,保存订单,发送电子邮件给客户以及(如果启用的话)网站管理员的最后一步。 所以在这里您需要在订单产品数据库插入代码中添加宽度,高度和最终价格信息。 您还需要将这些变量提供给电子邮件模板,以便客户可以在电子邮件中获取产品的宽度,高度和最终价格。

8)您还需要修改订单历史记录部分,以便客户可以在他/她的订单历史记录中查看所有这些详细信息。

9)您需要对管理员订单控制器进行更改,才能在管理员的订单视图部分显示这些数据。

10)最后(实际上并非最终:P),您需要对pdf发票进行更改,以便在pdf发票中也显示宽度,高度和最终价格。

注意:以上理论来自我在prestashop中使用类似功能的经验,并且可能根据您的要求为您工作或不工作

试试这个,我希望你能使它工作:) ..

祝你好运...

链接地址: http://www.djcxy.com/p/18289.html

上一篇: Prestashop Custom / Calculated Product Price

下一篇: PowerShell return a single element array from function