发布
社区首页 >问答首页 >Magento2缓存HolePunch定价

Magento2缓存HolePunch定价
EN

Stack Overflow用户
提问于 2020-11-05 07:20:16
回答 2查看 381关注 0票数 2

我有一个Magento 2网站,这已经成立,让客户有自己的定价。然而,作为结果,FPC (用于类别和产品页面)现在是为每个用户唯一生成的。

为了解决这个问题,我想通过Knockout JS加载价格,以便FPC可以在所有登录的用户之间共享,但定价将根据分配给该用户的定价系统动态加载。

我从这篇文章开始:https://magently.com/blog/full-page-cache-hole-punching-in-magento-2/

我已经成功地将Knockout JS配置为在类别页面上呈现“时间戳”(来自上面的教程),并且我已经测试了所有登录用户都可以共享FPC。

但是,我现在遇到的问题是,我需要将产品ID传递给该块,以便我可以使用该类返回该产品的正确价格。我看过这里的各种文章和问题,但似乎找不到答案。

EN

回答 2

Stack Overflow用户

发布于 2020-11-11 22:53:11

为了增强Magento 2中绕过全页缓存特性的动态功能,我编写了一个打孔特性,它可能会帮助您查看一个工作示例。(有关详细信息,请参阅https://bitbucket.org/magstaging/punchhole

步骤1:创建实现该节点的模型步骤2:在前端视图中定义模型的节节点步骤3:通过一个操作激活节点(例如,结帐/购物车/添加步骤4:创建将使用您的节点的phtml模板步骤5:在di.xml / frontend /web/ js /jspart.js中创建js文件

define(‘js组件’,'Magento_Customer/js/customer-data‘,function (Component,customerData) {’使用严格‘;

祝好运

票数 0
EN

Stack Overflow用户

发布于 2020-11-14 00:14:00

似乎为了实现您的目标,您应该在产品列表模板中初始化javascript组件,这样您将能够生成一个数组,其中包含用户从集合对象中看到的产品的It。然后,要将数据传递给javascript,只需在x-magento-init的component部分下添加另一个键值对,如我的另一篇文章https://magently.com/blog/introduction-knockout-js-magento-2/中所示

请注意,您也可以使用knockout绑定来显示UI组件获取的值,而不是编写额外的脚本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64689081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档