首页 文章

Magento“编辑捆绑 - >更新购物车”添加新捆绑而不是更新当前捆绑

提问于
浏览
0

有一个奇怪的错误似乎并没有困扰Magento论坛或其他网站上的任何其他人 .

当我转到购物车并单击“编辑”以更改捆绑产品的配置时,它会将我带到页面

".../checkout/cart/configure/id/<id number>/"

我可以更改捆绑包的选项 . 但是,当我点击捆绑页面底部的“更新购物车”按钮时,它会使用我刚刚选择的配置向购物车添加一个全新的捆绑包 . 显然我宁愿让它编辑当前的包,我相信应该这样做 - URL中的id号显然是出于此目的 .

看着:

design/frontend/base/default/template/checkout/cart/item/configure/updatecart.phtml

我看到它需要更新购物车按钮:

<button type="button" title="<?php echo $buttonTitle ?>" class="button btn-cart" onclick="
productAddToCartForm.submit(this)"><span><span><?php echo $buttonTitle ?></span></span></button>

我不确定它调用AddToCart表单而不是Update表单的事实是否可能与它有关?另一件有趣的事情是,如果我看一下:

app/code/core/Mage/Checkout/controllers/CartController.php

有一个名为“configureAction”的函数 - 当你转到/ configure url并获取购物车项目ID时会运行 . 还有另一个名为“updateItemOptionsAction”的函数 - 这看起来像我想要的那个?它似乎没有被调用 .

有没有人遇到过类似的问题?我觉得我在正确的区域,但我似乎无法弄清楚为什么这不会开箱即用?

谢谢!

EDIT:

那些展望未来的解决方案......:

位于 /template/catalog/product/view.phtml中的文件具有添加到购物车按钮的此代码:

<form action="<?php echo $this->getAddToCartUrl($_product) ?>"

因此,即使正确显示“更新购物车”按钮,按钮的行为也会始终添加到购物车而不是更新购物车 . 我改成了这个:

<form action="<?php echo $this->getSubmitUrl($_product) ?>"

它的工作原理!花了一段时间进行诊断,因为Magento提供的默认/现代模板实际上是不正确的,并且将始终显示添加到购物车按钮而不是更新购物车按钮 - 所以当我恢复到“默认”模板测试行为时,这会抛出一个扳手作品 .

1 回答

  • 2

    我和你有同样的问题,还有按钮的另一个小问题 . 经过大量的搜索,我最终找到了一个论坛帖子,其中包含以下Magento wiki页面的链接:

    http://www.magentocommerce.com/wiki/4_-_themes_and_template_customization/how_do_upgrade_your_template_from_1.4_to_1.5

    从本质上讲,您的checkout.xml文件可能存在问题 . 我建议暂时删除 /template/catalog/product/view.html,并暂时删除 /layout/checkout.xml,然后清除缓存文件,然后重试并查看问题是否是固定 . 如果删除这两个文件可以解决问题,那么重新安装它们并将它们与原始基本版本进行比较,并使用消除过程,找出您自己的文件缺失(或包含)的特定部分 .

    在我的特殊情况下,我错过了

    <reference name="product.info">
      <block type="checkout/cart_item_configure" name="checkout.cart.item.configure.block"></block>
    </reference>
    

    在checko.xml中,在 <checkout_cart_configure translate="label"> 部分下,根据该Wiki页面中的信息 .

相关问题