如何在Magento中的选项上动态设置/取消设置“is_require”标志?

时间:2012-01-11 16:11:23

标签: magento

我正在为Magento商店工作,该商店为服装产品提供定制刺绣选项。添加绣花是可选的(不是必需的。)但是,如果选择绣花选项,则会有许多选项,例如名称,字体等。

我认为如果未选中“添加绣花”复选框,则使用javascript删除绣花选项字段,然后在重载的Checkout / CartController.php中使用此代码,我可以完成此操作:

/* Options #23-40 are the embroidery details */

foreach($product->getOptions() as $_option){
    if($_option->option_id >= 23 && $_option->option_id <= 40){
        $_option->setIsRequire(false);
    }
}

这个ALMOST做了这个伎俩,但是当我到达查看购物车页面时,顶部出现此错误:

“以下某些产品没有所有必需的选项。请编辑它们并配置所有必需的选项。”

有人可以建议采用不同的方法,或者至少让我知道我是否走在正确的轨道上?而且我对购买另一个模块不感兴趣。

谢谢!

1 个答案:

答案 0 :(得分:0)

简单的“黑客”不是要求它们,而是将“必需的”css类添加到javascript的输入字段中。当您点击“添加到购物车”按钮时,这将使Magento抱怨。