Вы не вошли.
Страницы 1
В движке появился новы тэг - [ cut ].
Его предназначение - отделить часть первого сообщения темы для создания описания или вступления, которое будет отображаться у каждой темы при просмотре доски. Работает только в блогах и статьях.
Использовать можно уже сейчас, правда выглядит пока несколько неказисто. Надо избавляться от табличной структуры и делать все аккуратными блоками.
Как пользоваться:
Просто вставляем в нужном месте тэг:
[cut]
или
[cut=Дальше еще интереснее]
Весь текст сообщения от начала и до тэга будет взят в качестве описания/вступления к теме.
В конце описания будет помещена ссылка вида
http://samovarchik.info/viewtopic.php?id=3811#cut
Текст ссылки берется либо стандартный, взятый из языкового файла (сейчас это "Читать дальше..."), либо тот, что вы сами указали после знака =
думаю оно должно работать везде, просто в остальных типах досок пока не применяется...
Сей Тег имеет стратегическое значение!
Когда он есть - тоже надо чтобы парсер либо не давал ставить теги ДО [ cut ], либо умел убирать их если [ cut ] разделяет начало и конец какого то тега/тегов, причем второе несомненно правильнее!
я вижу правильным, чтобы тег в разрык котогрого попадает текстовый отрезок, не убирался, а просто "насильно" заканчивался там, где обрывается текст.
Ещё и без тега [ cut ] стоит научить движок выводить n-ное кол-во символов, которое работает, если автор [ cut ] не установил - и здесь опять же надо "принудительно" заканчивать не закрытые теги если они попались в разрыв текста.
Аналогично и в результатах поиска: сейчас выдаётся просто имя темы, а правильно выдавать отрезок текста, m-ной длины до и после искомой фразы в теме. И тут опять отрезок текста, который уже в 2-х местах может попасть в разрыв тегов (в начале и в конце). Значит опять-же надо суметь завершить теги.
Как я это вижу, пример текста:
[ h ]заголовок[ /h ]
бла, бла бла - бал бла бла, цитирю:
[ quote ]лялял ааа ббб ввв яляляля[ /quote ]
и если из этого текста у нас, скажем в поиске, отрывок текста начинается посередине заголовка и заканчивается посередине цитаты, то проще убрать оба тега и [ h ] и [ quote ], что и делают все. Но это ОЧЕНЬ не правильно.
А правильный алгоритм парсера такой, чтобы то что сохранилось в отрывке текста было оформлено абсолютно так же, как оно оформлено в оригинальном тексте.
Т.е. например у парсера получился такой отрезок приведённого выше текста-примера:
головок[ /h ]
бла, бла бла - бал бла бла, цитирю:
[ quote ]лялял ааа бб
Парсер ведь знает где начинается текстовый отрезок, и когда он доходит до [ /h ] - парсер должен понять что [ h ] обрезан, но это заголовок, значит всё, что до [ /h ] он должен сам догадаться окружить заголовком (сам сначала отрезка подставить [ h ]).
Так же, когда парсер дойдёт до [ quote ], и потом - до конца текста, опять же он сам должен догадаться что раз закрывающего [ /quote ] нету, то надо его в конце отрезка текста подставить самому и вывести текст так - тогда оформление останется таким же, как в оригинале, хоть текст и будет обрезанным с обеих сторон.
Не сложнее с такими: [ list ] [ * ] ... - сам же догадается добавить [ /* ] и затем закрыть [ /list ]
с Table посложнее... ну, лучше обрезанная таблица, чем вообще никакая...
На самом деле это я пронял еще году в 2004-м, и с тех пор не понимаю тех, кто теги просто отбрасывает.. Что они ленивые? или экономят процессорное время?
Это же просто неприятно смотрится, или даже вводит в заблуждение, когда пользователь1 приводит цитату пользователя2, а поиск мне выдаёт кусок текста, в котором тег цитаты отброшен (а не обрезан), и я думаю что это пользователь1 это написал, а это не так!
Есть класс HTMLPurifier фильтр, в котором уже описаны все возможные методы работы разного рода обрезалками по словам и буквам. При использовании данной библиотеки не потребуется писать собственный парсер, который бы как то сам восстанавливал испорченные теги. Библиотека очень гибко настраивается, сам лично ее использую для вывода анонсов.
Спасибо Сережа, думаю Юра посмотрит
Это класс из жумлы или он просто как кусок распространяется?
Все же я надеюсь, в итоге Юра либо решит что он подхоит по качеству и стилю написания кода, либо напишет по своему, заимствуя чтото, но в своём стиле...
аот он же поди огромный, а нам надо то... то что выше описано.
http://htmlpurifier.org/ вот ссылка на сайт оригинал
Страницы 1
[ Сгенерировано за 0.014 сек, 8 запросов выполнено - Использовано памяти: 1.93 MiB (Пик: 1.99 MiB) ]