rss cache Joomla 2.5 // рсс кэш джумла 2.5

Столкнулся с удивительным багом в джумле 2.5:

При импорте со сторонних сайтов новостей через rss они сначала какое-то время висят, а потом напрочь пропадают. Через плчаса блужданий стало ясно, что проблема с кешем.

Лечение:

1) заходим в /libraries/joomla
2) открываем в блокноте файл factory.php
3) ищем функцию getFeedParse – начинается на ~345 строке:
public static function getFeedParser($url, $cache_time = 0)
4) заменяем всю функцию на выражение:

public static function getFeedParser($url, $cache_time = 0)
{
jimport(‘simplepie.simplepie’);

$cache = self::getCache(‘feed_parser’, ”);

if($simplepie = $cache->get($url)){
return $simplepie;
}else{
$simplepie = new SimplePie(null, null, 0);

$simplepie->enable_cache(false);
$simplepie->set_feed_url($url);
$simplepie->force_feed(true);
$simplepie->init();

if ($cache_time > 0)
{
$cache->setLifeTime($cache_time);
$cache->store($simplepie, $url);
}

return $simplepie;
}
}
5) радуемся жизни %)

Лечение нашел тут)

Как я понял, ошибка встречается из-за кривого автообновления старых версий джумлы, потому она не так сильно распространена.

This entry was posted in CMS, Joomla. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *