запись в файл результата dynamic_sidebar()

Собственно у меня на сайте на морде выводиться спецовый сайдбар, где собраны самые последние, самые популярные за сегодня статьи и облако тегов. Вся эта конструкция базу нагружает 30 запросами. Мне не нравиться. Хочу, что б результат записывался бы в файл (скажем, каждый десятый вызов страницы, но это уже мелочи) и тупо инклюдился. Сайдбар вызывается

if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Морда') ) : endif;

по идее код

$out = dynamic_sidebar('Морда');
$fp = fopen(ABSPATH . 'morda.html', "w");
fwrite($fp, $out);
fclose($fp);

должен писать результат вывода в файл. но не пишет. где я дурак? файл есть и для записи доступен…

ну если $out действительно что то содержит то поставь проверочку
$file = fopen (ABSPATH."morda.html","r+");
$out = dynamic_sidebar(‘Морда’);
if ( !$file )
{
echo("Ошибка открытия файла");
}
else
{
fputs ( $file, $out);
}
fclose ($file);

dynamic_sidebar что делает – возвращает значение или выводит его?
Полезное чтиво по теме http://maxsite.org/ras34

да, уже нашел… заодно нашел упоминание, что кэш папка со временем разрастается. правда это в более менее старых версиях.. интересно, починили проблему? 🙂

Anonymous
Отправить
Ответ на: