Javascript 删除Fancybox Magento添加到购物车
我在产品页面上的Magento add to cart按钮出现问题,单击add to cart按钮时,它会显示一个带有签出按钮的弹出窗口,但我不希望出现该弹出窗口,否则我希望在单击时将add to cart按钮重定向到签出页面。我评论了网站上的所有fancybox代码,但没有任何帮助。你能帮我解决这个问题吗Javascript 删除Fancybox Magento添加到购物车,javascript,php,jquery,magento,fancybox,Javascript,Php,Jquery,Magento,Fancybox,我在产品页面上的Magento add to cart按钮出现问题,单击add to cart按钮时,它会显示一个带有签出按钮的弹出窗口,但我不希望出现该弹出窗口,否则我希望在单击时将add to cart按钮重定向到签出页面。我评论了网站上的所有fancybox代码,但没有任何帮助。你能帮我解决这个问题吗 我的测试网站是:usecureme.mythstreet.com您可以在产品页面中查看一些javascript代码 productAddToCartForm.submit = functio
我的测试网站是: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);
致:
并删除这一行jQuery.fancybox.showActivity()
换句话说,删除两行并添加一行(location.href='/checkout';)
然后,它会在添加到购物车后立即重定向到结帐页面。这很简单。它基本上是驻留在Magento文件夹下的AjaxCart模块。要查找并禁用ajaxcart,请转到: app/etc/modules/Ajaxcart.xml 打开它,会出现如下代码:
<?xml version="1.0"?>
<config>
<modules>
<Ajaxcart>
<active>true</active>
<codePool>local</codePool>
</Ajaxcart>
</modules>
</config>
真的
地方的
把“假”改为“真”
<active>false</active>
false
就这样 对于Magento 1,请转到系统->高级->高级,并在“禁用模块输出”部分中查找“Ajaxcart”模块。禁用该模块。清除缓存。对于Magento 2,导航到商店>配置>销售>结账>购物车。查找“添加产品后重定向到购物车”。发布您的添加到购物车按钮代码。您的答案可能有效,但我找不到代码,但我找到了另一个解决方案,请阅读下面。是的。您可以禁用ajax购物车模块,但在添加到购物车时,它不会重定向到签出页面。虽然ajaxcart模块被禁用,但您应该更新javascript。不,我不需要这样做。我只是停用了它,然后在配置设置下,我让它在“添加到购物车”之后重定向到“结帐”页面。然后我进入购物车控制器文件,将链接从“签出”更改为“一页”签出,这正是我所需要的。
<active>false</active>