我在产品页面上遇到了Magento添加到购物车按钮的问题,当单击添加到购物篮按钮时,它会显示一个带有结账按钮的弹出窗口,但我不想要这个弹出窗口,否则我想在单击时将添加到购物店按钮重定向到结账页面。我评论了网站上的每一个fancybox代码,但没有任何帮助。你能帮我吗?
我的测试网站是:usecureme.mythstreet.com
您可以在产品页面中检查一些javascript代码。
productAddToCartForm.submit = function(button, url) {
if (this.validator.validate()) {
var form = this.form;
var oldUrl = form.action;
if (url) {
form.action = url;
}
var e = null;
if ( $(button).id.indexOf('ec_shortcut') != -1 ) {
try {
this.form.submit();
return;
} catch (e) {
}
}
if (!url) {
url = jQuery('#product_addtocart_form').attr('action');
}
url = url.replace("checkout/cart","oxajax/cart");
url = url.replace("wishlist/index/cart", "oxajax/cart/add");
var data = jQuery('#product_addtocart_form').serialize();
data += '&isAjax=1';
if ('https:' == document.location.protocol) {
url = url.replace('http:', 'https:');
}
jQuery.fancybox.showActivity();
jQuery.ajax({
url:url,
dataType:'jsonp',
type:'post',
data:data,
success:function (data) {
Olegnax.Ajaxcart.helpers.showMessage(data.message);
Olegnax.Ajaxcart.helpers.cartSuccessFunc(data);
}
});
this.form.action = oldUrl;
if (e) {
throw e;
}
}
}.bind(productAddToCartForm);
在这个javascript代码中,更改以下代码:
Olegnax.Ajaxcart.helpers.showMessage(data.message);
Olegnax.Ajaxcart.helpers.cartSuccessFunc(data);
收件人:
location.href = '/checkout'; or ( location.href="/onepage" )
并删除此行jQuery.fancybox.showActivity();
换句话说,删除两行并添加一行(location.href='/checkout';)
然后,它将在添加到购物车后立即重定向到结账页面。
这很简单。它基本上是AjaxCart模块,位于您的Magento文件夹下。要定位并禁用ajaxcart,请转到:
app/etc/modules/Ajaxcart.xml
打开它,会有一个代码看起来像这样:
<?xml version="1.0"?>
<config>
<modules>
<Ajaxcart>
<active>true</active>
<codePool>local</codePool>
</Ajaxcart>
</modules>
</config>
用"false"代替那个true。
<active>false</active>
就是这样!
对于Magento 1,请转到系统->高级->高级,并在"禁用模块输出"部分查找"Ajaxcart"模块。禁用模块。清除缓存。
对于Magento 2,导航到商店>配置>销售>结账>购物车。查找"添加产品后重定向到购物车"。