Вывод заголовка из блога на сайте

Вы, наверное, заметили, что у меня в меню на сайте справа от пункта «Блог» выводится заголовок последней заметки. Читатели спрашивают, как сделать так же на своём сайте с Эгеей. Я делаю очень тупо:

// читаем кеш главной страницы
$s = @file_get_contents ('meanwhile/user/caches/frontpage.ctree.psa');
$s = @unserialize ($s);

// берём тайтл первого элемента
$blog_aftertext = @$s[0]['title'];

if (!$blog_aftertext) {

  // если не получилось, пробуем взять кеш главной страницы залогиненного пользователя
  $s = @file_get_contents ('meanwhile/user/caches/frontpage-author.ctree.psa');
  $s = @unserialize ($s);

  // но тут надо быть осторожнее: в кеше могут быть скрытые заметки (собственно, поэтому
  // кеш раздельный), поэтому находим тайтл ближайшей видимой и опубликованной заметки
  $i = 0;
  while (@$s[$i] and !($s[$i]['published?'] and $s[$i]['visible?'])) $i ++;
  if ($s[$i]['published?'] and $s[$i]['visible?']) {
    $blog_aftertext = $s[$i]['title'];
  }

}

Если ни там, ни сям не нашлось (например, кеш ещё не успел собраться), то и фиг с ним.

Естественно, никто не обещает, что в следующей версии Эгеи кеш будет устроен так же, поэтому это не очень промышленное решение. Но меня вполне устраивает. Может, и вам подойдёт.

Подписаться на блог
Отправить
Запинить
Дальше
Мои книги