Резалка текста на превьюшки

23 views
Skip to first unread message

George Regentov

unread,
Jul 1, 2008, 6:29:43 AM7/1/08
to django-...@googlegroups.com
На странице выводится 5-10-15 новостей.
Что бы облегчить страницу, выводится заголовок и несколько строк текста новости.
Дизайнер-верстальщик очень трепетно относится к тексту, поэтому текст не должен обрываться на пол предложения.
Если в тексте присутствуют хтмл тэги, резалка не должна оставлять незакрытые тэги, что бы не съезжала страница.
Отягощает  то что текст оттипографирован и в нем присутствуют символы   № « » и другие

Еще есть соменеия по поводу как хранить обрезки текста
или хранить их в бд и резать 1 раз или резать каждый раз перед выводом (тут кэш поможет)

в идеале надо утсанавливать количество символов (   -- один символ а не 6) и значение погрешности (+/- 20 символов)

Может у кого есть что то на примете или поделитесь?

Artiom Diomin

unread,
Jul 1, 2008, 6:37:07 AM7/1/08
to django-...@googlegroups.com
Например сделайте себе cut в виде html коментария и вставляйте в нужном
месте в текст
<!--undercut-->
и по нему разбивайте на превью.
Хотя конечно всех проблем это не решит, зато вы будете целиком и
полностью контролировать где именно будет разрыв (:D)

--
Artiom Diomin <kro...@gmail.com>

Serge Matveenko

unread,
Jul 1, 2008, 7:09:48 AM7/1/08
to django-...@googlegroups.com
2008/7/1 George Regentov <george....@gmail.com>:

http://www.djangoproject.com/documentation/templates/#truncatewords-html

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

если уж точно нельзя рвать предложения, возьмите код этого фильтра и
заставьте его резать не по пробелам, а по точкам.


--
Serge Matveenko
mailto:se...@matveenko.ru
http://serge.matveenko.ru/
CTO at Web-Mark
mailto:se...@web-mark.ru
http://www.web-mark.ru/

Igor Kramer

unread,
Jul 1, 2008, 10:01:22 AM7/1/08
to django-...@googlegroups.com
Пример реализации данного метода можно посмотреть в Byteflow - http://byteflow.su

2008/7/1 Artiom Diomin <kro...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages