Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.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
第一次查看页面后,Magento面包屑消失_Magento_Magento 1.7 - Fatal编程技术网

第一次查看页面后,Magento面包屑消失

第一次查看页面后,Magento面包屑消失,magento,magento-1.7,Magento,Magento 1.7,我们目前正在使用Magento开发一个网站,无论出于何种原因,我们第一次查看分类页面时,面包屑都在那里,但是,如果我们刷新页面,面包屑就会消失 任何关于为什么会发生这种情况的想法都将不胜感激 谢谢大家! 杰夫 编辑/更新:我已经进入breadcrumbs.phtml文件并在$crumbs变量上放置了一个var_dump,当breadcrumbs没有显示时它返回NULL,为什么在页面刷新时该变量会变为NULL 编辑/更新2:似乎整页缓存没有缓存面包屑 编辑/更新3:这肯定是一个完整的页面缓存问题,

我们目前正在使用Magento开发一个网站,无论出于何种原因,我们第一次查看分类页面时,面包屑都在那里,但是,如果我们刷新页面,面包屑就会消失

任何关于为什么会发生这种情况的想法都将不胜感激

谢谢大家!

杰夫

编辑/更新:我已经进入breadcrumbs.phtml文件并在$crumbs变量上放置了一个var_dump,当breadcrumbs没有显示时它返回NULL,为什么在页面刷新时该变量会变为NULL

编辑/更新2:似乎整页缓存没有缓存面包屑


编辑/更新3:这肯定是一个完整的页面缓存问题,当FPC被禁用时,面包屑在每次页面加载时都会工作

您可能需要将以下行添加到模板文件中-可能就这么简单

  echo $this->getLayout()->getBlock('breadcrumbs')->toHtml();

您可能需要将以下行添加到您的模板文件中—可能就这么简单

  echo $this->getLayout()->getBlock('breadcrumbs')->toHtml();

我对EE也有同样的问题,它似乎与打开的开发者模式有关

我在index.php中注释了代码,一切正常

出于某种奇怪的原因,当开发人员模式开启时,面包屑不会缓存,但随后会将空缓存拉到FPC中显示(这不是什么)


关于这个问题,我今天已经联系了Magento EE支持部门。我将根据反馈进行更新,但我建议其他有此问题的人与支持部门联系,因为这是一个现成的问题。

我对EE也有同样的问题,它似乎与打开的开发人员模式有关

我在index.php中注释了代码,一切正常

出于某种奇怪的原因,当开发人员模式开启时,面包屑不会缓存,但随后会将空缓存拉到FPC中显示(这不是什么)


关于这个问题,我今天已经联系了Magento EE支持部门。我将更新反馈,但我建议其他有此问题的人联系支持部门,因为这是一个现成的问题。

刚刚花了几个小时研究了这个问题。问题在于页面缓存没有加载页面布局是有充分理由的,这意味着当页面缓存尝试重新加载此块的缓存时,不会调用Mage\u Catalog\u Block\u Breadcrumbs->\u prepareLayout()_prepareLayout()是在调用Mage\u Page\u Block\u Html\u Breadcrumbs->\u toHtml()之前加载面包屑的程序

复制保存到文件系统的完整页面缓存问题的快速方法是:

  • 转到产品或类别页面
  • 刷新整页缓存
  • 进入/var/full\u page\u缓存并搜索包含两个类似“%CONTAINER\u BREADCRUMBS%”的文件的文件夹,然后将其删除
  • 这将要求页面缓存尝试仅重新加载该块。由于加载不会调用Mage\u Catalog\u Block\u Breadcrumbs->\u prepareLayout(),因此对Mage\u Page\u Block\u Html\u Breadcrumbs->\u toHtml()的调用将返回一个空字符串,新缓存文件将为空,直到缓存被完全清除并重新加载整个页面

    我提出的修复方案并不漂亮,但它似乎是侵入性最小的。只需为_-toHtml()方法创建一个块重写,该方法执行_-prepareLayout()的操作


    我只是花了几个小时研究这个。问题在于页面缓存没有加载页面布局是有充分理由的,这意味着当页面缓存尝试重新加载此块的缓存时,不会调用Mage\u Catalog\u Block\u Breadcrumbs->\u prepareLayout()_prepareLayout()是在调用Mage\u Page\u Block\u Html\u Breadcrumbs->\u toHtml()之前加载面包屑的程序

    复制保存到文件系统的完整页面缓存问题的快速方法是:

  • 转到产品或类别页面
  • 刷新整页缓存
  • 进入/var/full\u page\u缓存并搜索包含两个类似“%CONTAINER\u BREADCRUMBS%”的文件的文件夹,然后将其删除
  • 这将要求页面缓存尝试仅重新加载该块。由于加载不会调用Mage\u Catalog\u Block\u Breadcrumbs->\u prepareLayout(),因此对Mage\u Page\u Block\u Html\u Breadcrumbs->\u toHtml()的调用将返回一个空字符串,新缓存文件将为空,直到缓存被完全清除并重新加载整个页面

    我提出的修复方案并不漂亮,但它似乎是侵入性最小的。只需为_-toHtml()方法创建一个块重写,该方法执行_-prepareLayout()的操作


    这是Magento EE版本中的一个已知错误。您可以查看此解决方案


    我们最近遇到了这样的问题,但在我们的例子中,上面文章中的代码已经添加到代码库中。通过简单地(从cache.xml中)删除它,面包屑开始表现出应有的行为。奇怪的东西。

    这是Magento EE版本中的一个已知错误。您可以查看此解决方案


    我们最近遇到了这样的问题,但在我们的例子中,上面文章中的代码已经添加到代码库中。通过简单地(从cache.xml中)删除它,面包屑开始表现出应有的行为。奇怪的东西。

    你确定这是在你刷新页面时发生的,并且在你登录或其他时候它不会消失吗?在页面刷新时看到此线程,它们会消失吗?你确定这是在你刷新页面时发生的,并且在你登录或其他时候它不会消失吗?在页面刷新时看到此线程,清除缓存后面包屑立即消失,但是,当有人第二次访问页面时,面包屑消失顺便说一句,我确实用你的行替换$this->getChildHtml('breadcrumbs'),尝试一下,我仍然得到了相同的结果。但是,清除缓存后面包屑立即工作,当有人第二次访问该页面时,面包屑消失顺便说一句,我确实用你的行替换了$this->getChildHtml('面包屑')来尝试一下,我仍然得到了相同的结果EE支持吗