【发布时间】:2015-03-04 14:36:00
【问题描述】:
我正在安装 Magento 1.9,它必须具有直接结帐以及添加到购物车按钮。两者之间的主要(也是唯一)区别是直接结帐链接应该跳过购物车并在单击时重定向到结帐。 我使用this code 来实现功能,如您所见,这里有a comment。
“我需要做的就是将参数 /checkout/ 放到 url 中”。 快把我逼疯了。
所以这是检查,在观察者文件中
if (Mage::app()->getRequest()->getParam('checkout')) {
看起来很简单,但我一直在努力寻找答案,并在网上搜索如何以这种检查返回 true 的方式“addParam”。
这是我想要此功能的表单(操作):
<form action="<?php echo $this->helper('checkout/cart')->getAddUrl($_product) ?>checkout/" method="post" id="product_addtocart_form" <?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>
如您所见,我将 /checkout/ 手动添加到 url,当您查看浏览器指向的 url 时,它会起作用,即:
<form action="example.com/checkout/cart/add/uenc/aHR0cDovL2JrZm9vdHdlYXIuaHlwZXJub2RlLmlvL21hbi9yb2NvLmh0bWw,/product/5651/form_key/Zs9uAOj8oTuQFAbj/checkout/" method="post" id="product_addtocart_form" <input="" type="hidden" name="sid" value="checkout">
但它不起作用,看起来检查功能没有“看到”它。 我认为这有一个最简单的答案,但正如我所说,它已经让我好几天了。有什么想法吗?
也许将 if 语句更改为检查“checkout”是否在被调用的 url 中?
2016 年更新:在同样的情况下,我发现自己需要更改此解决方案以跟踪原因。我现在所做的(与this question 相关)是放置默认的“添加到购物车”按钮,并添加了另一个(默认)按钮,该按钮带有 jQuery onClick 函数,将 url 设置为正确的 add-to-cart-URL变量产品的选择。 使用 AJAX 我检查 URL 是否被正确调用,如果是,则重定向到结帐。一个更简单的解决方案。
【问题讨论】: