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?
感谢您的帮助!
亚历克斯
我们也遇到了这个问题,因此决定开发两个开源模块来解决这个问题:
- CustomGento_RemoveProductComparison 从 Magento 中完全删除了产品比较 - 它也处理了 cookie。
- CustomGento_RemoveViewedProducts 从 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 ;-)
在我们的 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?
感谢您的帮助! 亚历克斯
我们也遇到了这个问题,因此决定开发两个开源模块来解决这个问题:
- CustomGento_RemoveProductComparison 从 Magento 中完全删除了产品比较 - 它也处理了 cookie。
- CustomGento_RemoveViewedProducts 从 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 ;-)