我有一个应用程序,这是一个T恤定制器,这对它自己的工作非常好。但我需要将它集成到prestashop中。因此,在用户使用应用程序定制T恤后,他必须单击Add to cart,产品将被添加到cart中,并带有自定义价格和描述。
我需要的是将此输出作为自定义产品注入到PrestaShop购物车中,其中包含所有自定义信息以及生成的自定义产品图像,以显示在购物车中的详细信息旁边。
所以我已经完成了定制器,我已经为Prestashop做了一个自定义模块和页面,但我不知道如何将它与购物车集成。我的prestashop知识是有限的。
我该怎么做呢?
发布于 2014-04-18 23:20:36
当您在CartController.php中使用此代码时
$this->context->cart->addTextFieldToProduct($this->id_product, $r["id_customization_field"], Product::CUSTOMIZE_TEXTFIELD, Tools::getValue('product_description'));然后,您只需在自定义字段中保存自定义描述。但是,如何更改此自定义的价格?
当然,您必须覆盖product.php文件中的getPriceStatic方法来重新计算自定义价格。但还有另一个问题:如果客户将相同的产品添加到购物车中,但具有不同的定制和不同的定制价格,该怎么办?
不同的自定义-文本由您使用的方法处理,因此会正确地添加到购物车中,但不同的价格计算只会覆盖第一个自定义价格,因为这两个自定义与相同的产品相关联。
发布于 2013-09-29 21:07:10
我也做过类似的事情。这是我如何处理它的。
我的模块可以自己工作。我通过定制器模块中的对象模型将自定义存储在数据库中。每个自定义项都有一个ID。
Prestashop为每个产品提供定制。我在prodct页面上对客户隐藏了它,但我使用它来存储定制的ID。这样,您就可以在购物车中看到每个定制产品的定制ID。
我在Cart对象中使用了_addCustomization方法来存储定制ID。下面是一个小示例:
$context = Context::getContext();
$result = $context->cart->_addCustomization($id_product, $id_product_attribute, 1, 1, $id_customization, 1);希望我说得够清楚了。
这对你有帮助吗?
https://stackoverflow.com/questions/18868135
复制相似问题