我们需要构建一个购物车页面,允许客户根据预定义的选项个性化他们的产品(请参阅此处的线框图像:http://i.stack.imgur.com/OY5XF.png)。个性化必须位于购物车页面上,以便用户体验。
从技术上讲,构建此类功能的最佳方法是什么?我被建议查看属性,但我的感觉是它们没有提供我们正在寻找的个性化水平,我也不确定如何在购物车页面上找到这些选项。
非常感谢任何帮助和建议。
答案 0 :(得分:1)
看起来很痛苦。这实际上是一个巨大的修改,所以我会回过头来验证这个要求,因为这会使框架按照它不想要的方向弯曲。我列出了我可以在下面看到的主要缺陷,以供参考。
将选项与订单一起存储(并可能根据所选选项更改产品价格)的一个好选择是在目录产品本身上使用自定义选项。这些将与订单一起保存,并已显示在处理订单的所有管理工具中。
这就留下了在购物车页面上添加它们的不良任务。它们通常会添加到目录视图页面中,因此如果您不想要在该页面上使用它们,则需要将它们从视图模板中删除。在这样做时,您可能还需要使选项可选,以便Magento允许用户将项目添加到购物车。
接下来,修改购物车“行”模板,以便在产品放入购物车时显示产品上的所有选项。你没有提到用户是否必须点击任何东西来保存他们的选项,所以大概你需要破解JS来保存每当一个字段有模糊事件时的选项。创建一个带有选项值和cart_item_id
的新控制器/操作,并将其保存回购物车。只要选项都是可选的,Magento就可以让你一次保存一个。如果涉及价格更新,请务必重新加载总计。
如果选项真的是可选的,那么这应该涵盖大多数基础。如果确实需要它们,则需要在“结帐”按钮上添加一个检查,以便手动确保所有选项都已计入,否则会将用户重新加入购物车。
接下来,图像。在一个非常乐观的世界中,客户端不会要求文本覆盖以正确的字体完成。这是一个天真的假设。更有可能的是,您需要创建另一个控制器/操作来抓取已经选择的产品选项并呈现文本的图像。绝对将这些元素放置在覆盖窗口上的产品图像本身上,您将获得图像的良好近似值。
这不是这个购物车页面所需修改的详尽列表,如果您不是经验丰富的Magento开发人员,我会犹豫不决。尽可能跳过这种方法,并将选项保留在产品页面上。
最后注意,属性不是解决此问题的好方法。每个产品只能有一个属性值,因此每个客户都无法自定义其产品。
希望有所帮助!
谢谢, 乔