Magento 2:完全禁用最近查看和比较//禁用 Cookie 设置

Magento 2: Completely disable Recently Viewed & Compared // disable Cookie setting

在我们的 Magento 2.2.2 安装中,我们已经从我们的站点中删除了所有 "Recently Viewed" 和 "Compared" 元素(通过自定义主题中的 XML 文件删除)。我们根本不需要这些功能,并且删除所有元素到目前为止效果很好。 但是:

这些功能本身显然仍处于启用状态并且会产生不必要的输出。最重要的问题是仍在设置 COOKIES / HTML 本地存储:

recently_viewed_product | recently_viewed_product_上一个| recently_compared_product | recently_compared_product_上一个

有没有办法完全禁用这些功能,这样就根本不会输出/不再设置 cookie?或者另一种方法来阻止 Magento 设置这些 cookie?

感谢您的帮助! 亚历克斯

我们也遇到了这个问题,因此决定开发两个开源模块来解决这个问题:

从技术上讲,两个模块都为 Magento_Catalog/js/storage-manager 添加了一个 mixin。在 mixin 中,我们扩展函数 prepareStoragesConfig 并从 storagesConfiguration:

中删除相应的配置
define([], function () {
    'use strict';

    return function (storageManager) {
        return storageManager.extend({
            prepareStoragesConfig: function () {
                if (typeof this.storagesConfiguration === 'object') {
                    delete this.storagesConfiguration.recently_compared_product;
                }
                return this._super();
            }
        });
    };
});

需要注意的一件事是 cookie product_data_storage 仍然存在。我不完全确定这是否 用于产品比较/查看产品功能,因此也可以删除或者是否需要保留...我倾向于忽略这个问题目前并声称 product_data_storage 是技术上必要的 cookie ;-)