Авто анонс для 0.4.2

Если кто хочет реализовать авто анонс для версии 0.4.2 я сделал так.
Всё описано в этой статье, спасибо автору — livestreet.ru/blog/tips_and_tricks/1573.html.
Реализовано как * * * * UPDATE 2 * * * *. Переходим в файл Text.class.php он находится здесь — engine/modules/text/Text.class.php и меняем $sTextShort = $sText; на этот код —
if (strstr ($sText, ' <a name="cut"></a> ') or strlen ($sText) <= 200) {
        $sTextShort = $sText;
} else {
        // Обрезаем все, что больше 200 символов, но только после точки (или других знаков окончания предложения)
        preg_match("/.200[^.!;?]*[.!;?]/si", $sText.". ", $matches);
        $sTextShort = $matches[0];
}

У меня всё работает нормально.

11 комментариев

avatar
не работает. выдает

Notice: Undefined offset: 0 in C:\xampp\htdocs\kultme\engine\modules\text\Text.class.php on line 199

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\kultme\engine\modules\text\Text.class.php:199) in C:\xampp\htdocs\kultme\engine\include\function.php on line 215

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\kultme\engine\modules\text\Text.class.php:199) in C:\xampp\htdocs\kultme\engine\include\function.php on line 216
avatar
{$oTopic->getTextShort()|strip_tags|truncate:750:''}
avatar
простите что с этим сделать? :)
avatar
обмазываться несвежим кодом и д
это встроенные в смарти модификаторы. в файле шаблона topic_list.tpl найти нечто похожее но без вертикальных черт и странных слов между ними и заменить на то что я сверху написал. и не надо никаких плагинов писать.trancate — это обрезалка текста, цифра означает максимальное количество показываемых количество байтов, в утф8 один символ равень двум байтам, поэтому тут покажется 375 символов, причём обрезается по словам а не по символам. в ковычках может быть любой текст, он покажется после текста. strip_tags — вырезать все хтмл теги из текста, это впринципе можно убрать
avatar
Попробовал, спасибо. Работает.
Но текст обрезается сразу после слова. Где нужно добавить что-то типа «Читать далее»?
avatar
там чуть ниже по коду условие {if} стоит для ката, если его убрать — он будет показываться всегда
avatar
Всё получилось спасибо. Но еще пара вопросов :)
1. Можно ли сделать так, чтобы cut был не после слов, а допустим после точки. (законченого предложения)
2. Если в начале поста изображение, оно не выводится на главной в анонсе. Можно сделать чтобы выводилось?
avatar
С картинками, сорри затупил, разобрался :)
avatar
средствами смарти насколько я понимаю нет, надо писать плагин с регулярными выражениями. с картинками убрать стрип_тэгс из вывода, да
avatar
Замечательно!!! спасибо огромнейшее
avatar
Подскажите, пожалуйста, а как сделать, чтобы картинки не обрезались? А то если в анонс попадает картинка, то кат обрезает ее урл, и выводится что-то типа «img src="/img/001...» вместо изображения.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.