Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 面包屑不会添加到缓存视图上_Php_Cakephp_Caching_Breadcrumbs_Cakephp 2.3 - Fatal编程技术网

Php 面包屑不会添加到缓存视图上

Php 面包屑不会添加到缓存视图上,php,cakephp,caching,breadcrumbs,cakephp-2.3,Php,Cakephp,Caching,Breadcrumbs,Cakephp 2.3,在我的布局default.ctp中,我有 <!--nocache--> <?php echo $this->Html->getCrumbs(' / ', 'Home'); ?> <!--/nocache--> 一切正常 为什么没有调用addCrumb()?我测试了如何将添加到相同的nocache-块中,该块可以正常工作(即在每个页面渲染时调用) 问题来源似乎是通话的顺序 在我的初始版本中,是在之前调用的,只要视图没有被缓存,它就可以正常工作

在我的布局default.ctp中,我有

<!--nocache-->
  <?php echo $this->Html->getCrumbs(' / ', 'Home'); ?>
<!--/nocache-->
一切正常


为什么没有调用
addCrumb()
?我测试了如何将
添加到相同的
nocache
-块中,该块可以正常工作(即在每个页面渲染时调用)

问题来源似乎是通话的顺序

在我的初始版本中,
是在
之前调用的,只要视图没有被缓存,它就可以正常工作

一旦它们被缓存到works中,就会在
getCrumbs
之前调用

这只是部分回答了我的问题。因为我的布局中使用了
getCrumbs
.ctp,所以无法更改顺序


我把这个贴出来作为答案,而不是我问题上的注释,这样就不会有人因为我在问题中已经写过的东西而得到赏金;)如果您能提供剩余问题的解决方案,或者知道这是否是蛋糕中的bug,我很乐意为您提供奖励。

您使用的是什么版本的cakephp?v2.3-感谢您的提示。我添加了一个关于InfoVersion的标签,为什么碎屑首先必须在缓存之外?你缓存了网站,因此网站的链接也应该是可缓存的,因为它们不会改变。这是一个很好的标记。。起初我误解了食谱,认为面包屑显示了最近X次访问的站点。这就是我添加了
无缓存
-标志的地方。但由于显示的信息是静态的,所以您是对的。如果你把它作为答案贴出来,我会打勾确认它是正确的
<!--nocache--><?php $this->Html->addCrumb('Rules', '/rules'); ?><!--/nocache-->
// public $cacheAction = array('home' => 120, 'rules'  => 36000);