我在Magento商店有一个产品,需要立即购买按钮才能将产品直接带到结帐页面,而不会将其添加到购物车中。
我试过这个,但没有任何效果:
<button onclick="location.href ='{{config path="web/unsecure/base_url"}}/checkout/cart/add?product=1&qty=1′">Buy It Now</button>
答案 0 :(得分:0)
启动Magento 1.8,不再可能通过外部推荐人将产品添加到购物车。所有添加到购物车的操作都取决于与会话不同的用户表单键。
如果您可以编辑模板文件,可以使用php:
<?php echo $this->helper('checkout/cart')->getAddUrl($_product);?>
答案 1 :(得分:0)
这是我找到的解决方案:
在“产品视图”页面上添加“立即购买”按钮
将立即购买按钮添加到addtoCart.phtml
<button type="button" title="Buy Now" class="button btn-buy" onclick="productBuyNowForm.submit(this)"><?php echo $this->__('Buy Now'); ?> </button>
在onClick onlick事件上,使用了一个自定义VarienForm,productBuyNowForm.submit(this),它将提交此表单并重定向到checkout onepage。
在view.phtml
添加以下JavaScript代码var productBuyNowForm = new VarienForm('product_addtocart_form');
productBuyNowForm.submit = function (button, url) {
if(!document.getElementsByName("return_url")){
var element = document.getElementById("product_addtocart_form");
var child=document.getElementById("return_url");
element.removeChild(child);
}
if (this.validator.validate()) {
var form = this.form;
var oldUrl = form.action;
if (url) {
form.action = url;
}
var inputreturn= document.createElement("input");
inputreturn.type = "hidden";
inputreturn.name = "return_url";
inputreturn.value = "<?php echo Mage::getUrl('checkout/onepage')?>";
document.getElementById('product_addtocart_form').appendChild(inputreturn);
// Append a line break
var e = null;
try {
this.form.submit();
} catch (e) {
}
this.form.action = oldUrl;
if (e) {
throw e;
}
if (button && button != 'undefined') {
button.disabled = true;
}
}
}.bind(productBuyNowForm);