Magento自定义类别小部件未出现在舞台服务器上

时间:2014-03-04 23:16:42

标签: php magento widget categories custom-widgets

我跟着这个(第一条评论), magento - category name and image in static block?创建一个简单的小部件,以显示CMS页面上静态块的类别图像和标题。它在我当地的MAMP版Magento Enterprise 1.13.0.2上工作正常。然而,它不适用于舞台/测试环境Magento 1.13.1.0。 (Ubuntu的)。

它没有错误,就好像它忽略了模板文件(info.phtml)。当我恢复到默认主题时,我意识到我必须将模板文件复制到默认的企业文件夹才能使它工作但它确实(本地版本)。我已确保模板文件夹位于每个主题中,基本,企业(默认),MyTheme(默认(默认为企业默认)和(MyTheme / MyThemeVariant))。

本地和舞台之间看起来不同的唯一设置/配置是漂亮的网址不在本地工作。我已经查看了htaccess,但仍未解决。在这两个版本上,本机类别链接Widget不起作用,但我不确定这是否相关。

我已禁用任何扩展程序关闭缓存并清除索引。仍然没有。

我一直在寻找答案,回顾我的步骤,改变和改变我认为可能与3天相关的任何设置,所以我很困难。任何人都可以提供尝试我会试一试。

2 个答案:

答案 0 :(得分:0)

因此,在Magento Enterprise中,您还可以通过Magento管理员访问整页缓存:系统 - >配置 - >系统 - >高级 - >外部整页缓存设置。

在System->高速缓存管理页面上,以及禁用所有高速缓存,您应该刷新Magento Cache和Cache Storage。

您可能有一个名为Redis或APC的“缓存”,但我认为这不会影响.phtml输出。如果你可以在后端访问Widget,我不认为这些项目是问题。

您的网络服务器可能有整页缓存,例如Varnish,但我不知道如何使用它或打开或关闭它。

从理论上讲,您的网络服务器标题可能会说“此页面未更新,因此互联网服务提供商可以将本地副本存储在其缓存中” - 但如果是这种情况我会感到惊讶(检查标题并检查{{1}如果你想消除这种可能性,请{}} Cache-controlExpires标题。

您的浏览器可能拥有自己的小缓存(可以从浏览器设置中清除)。

如果它不是缓存问题,根据我的经验Last-modifed如果文件中有PHP错误但是你在本地开发服务器上工作,则会跳过文件。它可能是文件权限问题吗?它可能是服务器上的小部件中的设置,不是由您的小部件.phtml处理的吗?尽管如此,尝试将您的widget .phtml更改为一个非常简单的文件,如.phtml,看看是否呈现 - 尝试将小部件放在不同的页面上(即不会在任何地方缓存的新页面),看看是否得到一切。

您是否可以与其他模块发生命名空间冲突?例如,XML文件正在更改设置.phtml模板的窗口小部件块XML名称?您的widget.xml文件是否声明<?php echo('test PHP output'); ?>可能会排除您尝试呈现小部件的块?

还有什么?您提到此窗口小部件显示类别信息:您是指引用服务器上存在的类别吗?它可能与您的开发服务器具有不同的类别ID和/或检查该类别在网站和商店中是否可见。

好的,我觉得我现在已经缺乏想法了。

答案 1 :(得分:0)

问题是&#34; Block&#34; php文件的第一个字母是小写的。我将它从info.php更改为Info.php,现在一切都按预期工作。

这是Magento最令人沮丧的调查。我唯一希望的是它可以为人们带来一大堆痛苦。