繁体   English   中英

Magento删除块仅适用于禁用缓存

[英]Magento remove block only works with cache disabled

我有一个静态块,它被添加到每个页面的页脚引用。 我的主页是一个CMS页面,我将代码放在Layout Update XML页面中,以从该页面中删除该块。

这是它添加到所有页面的页脚的方式:

在page.xml里面

<reference name="footer">
  <block type="cms/block" name="page_cta" before="-">
    <action method="setBlockId"><block_id>page_cta</block_id></action>
  </block>
</reference>

我的主页布局中的代码更新xml以删除块:

<reference name="footer">
  <remove name="page_cta" />
</reference>

该块不应显示在主页上,并应显示在所有其他页面上。 这工作正常,但只有在禁用缓存时。 似乎发生了什么是启用了缓存然后我查看了主页并删除了块,但随后它也被删除了每个其他页面。

任何人都可以解释为什么如果启用缓存这不起作用?

禁用特定块的缓存,如下所述:

<reference name="footer">
       <action method="unsetData"><key>cache_lifetime</key></action>
       <action method="unsetData"><key>cache_tags</key></action>
       <block type="cms/block" name="page_cta" before="-">
           <action method="setBlockId"><block_id>page_cta</block_id></action>
       </block>
   </reference>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM