Есть ли какойнибуть код, чтобы на главной странице выводились последние 5 статей целиком или хотябы ссылочки на них, в зависимости от даты публикации естественно.
0
Последние статьи на главной
Автор
prestige
, 27.09.2009, 22:07
Сообщений в теме: 2
#1
Отправлено 27.09.2009, 22:07
#2
Отправлено 28.09.2009, 00:50
Временно использую схему с добавлением шаблона главной, если есть другие способы прошу напишите.
Вопрос как в данном коде сделать проверку на кол-во символов в статье, и чтобы выводилось не более 500 символов к примеру:
вот код:
Это слегка измененный код, Главного администратора: zebrum
Вопрос как в данном коде сделать проверку на кол-во символов в статье, и чтобы выводилось не более 500 символов к примеру:
вот код:
<?php $html = zengine::zcache()->get('mplist'); if (false === $html) { // Получаем список всех страниц в структуре сайта $items = array(); foreach (new RecursiveIteratorIterator(zengine::zsource()->getMenu()) as $item) { $items[] = $item; } // Сортируем страницы в порядке убывания по дате публикации $sorter = new zpagesorter('publish desc'); $sorter->sort($items); // Оставляем только 10 страниц начиная со второй страницы (первая всегда главная, т.к. у неё текущее время) $items = array_slice($items, 1, 10); // Выводим информацию о страницах $html = ''; foreach ($items as $item) { // Создаем объект страницы, т.к. $item - это пункт меню $page = zpage::load($item->uri); // Выводим информацию, которая $html .= '<a href="' . $item->link . '">'; $html .= $page->getTitle() . '</a><br />'; $html .= $page->getBody() . '<br />'; } zengine::zcache()->put('mplist', $html); } echo $html; ?>
Это слегка измененный код, Главного администратора: zebrum
#3
Отправлено 28.09.2009, 10:57
Можно заменить:
на вот это:
В приведенном выше коде предполагается использование кодировки UTF-8 и текст страницы не содержит HTML-тэгов, т.к. отсекание на 500-м символе может привести к ошибкам верстки и некорректному отображению страницы.
$html .= $page->getBody() . '<br />';
на вот это:
// Получаем текст без HTML-оформления $body = $page->getProperty('body'); // Считаем, что текст задан в кодировке UTF-8 if (mb_strlen($body, 'utf-8') > 500) { $body = mb_substr($body, 0, 500, 'utf-8'); } $html .= '<p>' . $body . '</p>';
В приведенном выше коде предполагается использование кодировки UTF-8 и текст страницы не содержит HTML-тэгов, т.к. отсекание на 500-м символе может привести к ошибкам верстки и некорректному отображению страницы.
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 скрытых пользователей