【问题标题】:Magento TopLink Cache My Cart (#)Magento TopLink 缓存我的购物车 (#)
【发布时间】:2012-08-01 14:42:56
【问题描述】:

标题和缓存中的“My Car (#)”有一些问题。

我正在使用 Magento Enterprise 1.12。问题是当我在标题中的购物车中添加或删除某些项目时,我有“我的车(#)”并且每次我从购物车中添加或删除项目时都不会更新,那是因为缓存,我不知道怎么解决...

步骤:

1) 从管理员清除缓存

2) 进入首页(页眉出现“我的购物车”)

3) 去一些产品页面

4) 将一些产品添加到购物车中

5) 重定向到我的购物车页面(在标题中出现“我的购物车(1 项)”)

6) 再次转到主页(在标题中仍然出现“我的购物车”),没有“1 项”

如果我进入管理站点并清理主页上的缓存,则会出现“我的购物车(1 项)”。当我有 1 件商品然后我从购物车中删除该商品时,我遇到了同样的问题。

我需要有活力,我不知道该怎么做。

Tnks 阅读! :)

【问题讨论】:

  • 似乎显示您的购物车的块可能像页脚一样被缓存(不适用于动态内容)。尝试将它移到其他地方,看看它是否给你同样的问题(我假设你使用自定义主题)
  • 你在使用 FPC(全页缓存)吗?

标签: magento magento-1.12


【解决方案1】:

好的,这里可能有很多问题,但调试此问题的一个不错的方法是覆盖 JavaScript Minicart 方法以查看它在哪里出错。

在模块的 layout.xml 文件中添加自定义脚本 by following this post

接下来,Minicart.prototype 有很多函数,console.log(Minicart.prototype); 来查看。

我猜测 updateItem 方法出了点问题。通过在您的 JS 文件中添加它来覆盖它:

if (typeof Minicart != "undefined") {
    Minicart.prototype.updateItem = function(el) {
        var cart = this;
        var input = $j(this.selectors.quantityInputPrefix + $j(el).data('item-id'));
        var quantity = parseInt(input.val(), 10);
        cart.hideMessage();
        cart.showOverlay();
        $j.ajax({
            type: 'POST',
            dataType: 'json',
            url: input.data('link'),
            data: {qty: quantity, form_key: cart.formKey}
        }).done(function(result) {
            cart.hideOverlay();
            if (result.success) {
                cart.updateCartQty(result.qty);
                if (quantity !== 0) {
                    cart.updateContentOnUpdate(result);
                } else {
                    cart.updateContentOnRemove(result, input.closest('li'));
                }
            } else {
                cart.showMessage(result);
            }
        }).error(function() {
            cart.hideOverlay();
            cart.showError(cart.defaultErrorMessage);
        });
        return false;
    };
}

并开始注销失败的部分。如果这没有导致错误,请尝试其他方法。

编码愉快!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-06
    • 1970-01-01
    • 2012-12-02
    • 1970-01-01
    • 2011-12-07
    • 1970-01-01
    • 2012-06-21
    相关资源
    最近更新 更多