我正在使用TinyBrick's Lightspeed模块进行整个页面缓存,并尝试设置打孔。
我正在遵循以下说明:http://blog.delorumcommerce.com/general/90-percent-lightspeed-traffic-fast-but-i-need-more
我已经编辑了我的模板的header.phtml,以便它包含以下代码片段:
<!-- TEST HOLE PUNCH -->
<!-- NOCACHE key="topMenuLinks" -->
<?php echo $this->getChildHtml('topCart') ?>
<!-- ENDNOCACHE -->
<!-- END TEST HOLE PUNCH -->
如果我访问的页面购物车中没有任何内容,则会显示购物车元素,带有TEST HOLE PUNCH
注释,但删除了NOCACHE
。
如果我在服务器上查看页面的缓存文件,我可以看到它同时包含TEST HOLE PUNCH
和NOCACHE
注释,如果我使用?debug_front=1
查看页面,我会看到:
success!, I'm about to spit out a cached page, look out.
这看起来像预期的那样工作,但是如果我向购物车中添加一件商品,?debug_front=1
会回复:
disqualified with cart
valid disqualifiers without hole punch content... bummer
查看页面源代码时仍然会显示TEST HOLE PUNCH
注释,但不会显示NOCACHE
注释。围绕一个购物车元素,该元素准确地报告购物车中的商品数量
根据我对这篇博文的理解,我应该看到一个空白点,其中NOCACHE
评论被TEST HOLE PUNCH
评论包围。
在阅读了"valid disqualifiers without hole punch content... bummer"
之后,我认为它可能失败了,因为我没有尝试填补这个漏洞。
我使用示例代码添加了一个控制器,并能够导航到/lightspeedcontent/hole/index
并查看:
{"topMenuLinks":"Hello World!"}
我编辑了我的catalog.xml
和cms.xml
,这样所有的<action method="cachePage">
都包含:
<holecontent>lightspeedcontent/hole/index</holecontent>
但当我访问购物车中有或没有商品的页面时,我得到的结果是相同的。
有没有人有这个模块的经验?我们将非常感谢您的帮助。
发布于 2011-11-19 06:07:42
您是否在后端缓存管理工具中刷新了Magento的布局缓存?缓存的版面可能没有您添加的标签,这会使LightSpeed认为您没有控制器来提供填充内容。
发布于 2012-12-04 22:56:58
我遇到了同样的问题,但我只是让Hole Punching在顶部的链接上工作,即它显示'Hello World!‘而不是链接。我所做的唯一更改是在cms.xml和catalog.xml中,我删除了除'loggedin‘之外的所有内容,所以现在当我登录并返回主页时,它会显示'Hello World!’消息。
我意识到这个答案有点晚了,但它可能会对其他人有所帮助。
https://stackoverflow.com/questions/7273459
复制相似问题