如何从magento管理员通知中禁用/减少缓存?

时间:2015-08-22 23:05:48

标签: php magento caching admin

我几分钟前创建了一个模块,用于从RSS源中提取信息,并将其显示在管理面板的管理菜单中,位于管理菜单下方的工具栏中。

这很好用,但不幸的是,当我刷新时它不会加载新消息。我必须刷新Magento的缓存,然后刷新它以加载新消息。

我想为通知模块/块禁用缓存,因此每次加载页面时都可以加载所有新邮件。

我尝试了这行代码,但它似乎不起作用:

<reference name="notification_toolbar">
    <action method="setCacheLifetime"><s>0</s></action>
</reference>

有人可以告诉我如何从这个模块/块中禁用缓存。

感谢。

1 个答案:

答案 0 :(得分:0)

查看了一些代码后,我意识到它有一个更新频率计时器,所以我查看了管理面板的系统部分,发现配置 =&gt;下的更新频率选择器系统 =&gt;的通知即可。不幸的是,它的最短时间是 1小时

我浏览了法师文件夹,发现以下内容提供了时间。

  

法/ Adminhtml /型号/系统/配置/源/通知/ Frequency.php

class Mage_Adminhtml_Model_System_Config_Source_Notification_Frequency
{
    public function toOptionArray()
    {
        return array(
            1   => Mage::helper('adminhtml')->__('1 Hour'),
            2   => Mage::helper('adminhtml')->__('2 Hours'),
            6   => Mage::helper('adminhtml')->__('6 Hours'),
            12  => Mage::helper('adminhtml')->__('12 Hours'),
            24  => Mage::helper('adminhtml')->__('24 Hours')
        );
    }
}

然后我添加了以下代码并运行了一些测试,这些测试工作正常!

0 => Mage::helper('adminhtml')->__('0 Minute'),

不确定我是否正确使用它,但它完全符合我的需要。 然后我用我的模块覆盖它以完成它。

希望它能帮助别人!