Помощник
|
Как правильно организовать хранение и вывод превью к статьям. |
Wins
|
Сообщение
#1
|
||
|
|
||
|
|||
Den1xxx |
6.7.2013, 13:28;
Ответить: Den1xxx
Сообщение
#2
|
|
Мне кажется правильнее делать краткое описание и полное отдельно — у себя я делаю именно так.
Полный контроль и минимум нагрузки на хостинг — выбираем только те поля что надо. Только у меня ещё есть поле автор, и два режима публикации — html и text (поддержка бб-кодов, смайлов и полный игнор html тегов). Публикация в режиме HTML: [attachment=39711:art_html.png] Публикация в режиме Text: [attachment=39710:art_text.png] Встречается ещё и вариант как в Вордпрессе (Вы его не упоминали). Делается тег <more>, движок его встречает и обрезает полный текст до этого тега. Тоже вариант, чо. А что касается Вашего второго варианта, то он слишком геморройный для реализации и я его вообще бы не рассматривал. |
|
|
alexdrob |
6.7.2013, 13:45;
Ответить: alexdrob
Сообщение
#3
|
|
Вот что мне интересно :)
Значит вырезание хтмл тегов отрезания куска текста - громоздко и даст нагрузку. А парсинг бб кодов каждый раз при выводе статьи это вообще не нагружает?) Имхо, да и не только по моему :) много где уже так, например на хабре, нужно забыть про ббкоды, вписывать разу хтмл код, при добавлении в бд отбрасывать запрещённые теги, атрибуты и значения атрибутов, но это будет делаться 1 раз, при сохранении документа, и потом выводить уже не парся бб коды. По поводу отбрасывания лишних тегов и так далее, гуглите по слову sanitize готовые библиотеки. Для пхп думаю тоже должны быть, всё таки самый распространённый язык дял сайтов. По поводу хранения... тут я согласен с Den1xxx, мне удобней два поля делать, первое поле 255 символов, я егос разу в мета тег выводу, там запрещён у меня любой хтмл. А второе поле это текст статьи уже. Но изначально я хотел сделать как в вордпрессе, дополнительным тегом делить, тоже ен плохой вариант с одной стороны, но не для выводи превьюшки статьи, получается что на страницах с описанием статей, нужно постоянно обрезать текст. Так что я остановился на первом варианте, с 2 полями. |
|
|
Wins
|
Сообщение
#4
|
|
Да у меня тоже два поля было,потом попробывал убрать поле с кратким описанием,а после этого задумался правильно ли это.Теперь понял что не правильно,верну как было.
|
|
|
Den1xxx |
6.7.2013, 20:44;
Ответить: Den1xxx
Сообщение
#5
|
|
Значит вырезание хтмл тегов отрезания куска текста - громоздко и даст нагрузку. А парсинг ББ-кодов каждый раз при выводе статьи это вообще не нагружает?) Не ёрничайте. Два режима публикации лучше чем один, и это дело админа чем пользоваться. Режим с ББ-кодами мне больше кстати нравится, потому что не надо в конце строки ставить <br />, проще глобально запихнуть в тег [img] скрипт лайтбокса, а в тег [url] — class="external" rel="nofollow", применить тег [hidden], скрывающий текст от незарегистрированных, применить расцветку кода с помощью [code]. А как в вордпрессе я не стал бы делать, потому что нет полной свободы. В кратком описании я может хочу писать что-то другое, чем в начале полной статьи? На Хабре кстати тоже та же система — хабракат. Кстати есть плюс в этом подходе — поиск проще сделать, его по одному полю нужно делать. Если на сайте часто будет использоваться поиск, то наверное этот способ даже предпочтительней. Поиск по одному полю будет меньше нагружать БД. |
|
|
alexdrob |
6.7.2013, 20:54;
Ответить: alexdrob
Сообщение
#6
|
|
Не ёрничайте. Два режима публикации лучше чем один, и это дело админа чем пользоваться. Каким боком относятся два режима публикации к моей фразе? :) Wins написал насколько сильно увеличится нагрузка на сайт? То етсь будет ли больше нагрузки при обрезании html кода. Я и сказал что при парсинге бб кодов есть практически та же нагрузка и, что выбирая между BBCODE и HTML, я предпочитаю HTML. Так как парсится 1 раз, на проверку XSS при создании записи. Режим с ББ-кодами мне больше кстати нравится Больше чем что? Чем режим html? Чем? потому что не надо в конце строки ставить <br />, А Вы сами что ли ставите? Я просто жму энтер и всё... http://ckeditor.com/demo http://mindmup.github.io/bootstrap-wysiwyg/ Вы видите там br? |
|
|
Wins
|
Сообщение
#7
|
|
Я вот тоже bbcode не пользуюсь, как то поставил посмтореть что с этого будет, и понял что для меня это как доп. наворот для сайта, в котором нет не обходимости, поэтому пользуюсь просто html.
А по нагрузки, у меня к примеру на странице выводится десятки кратких описаний, вот я и подумал про нагрузку, я ж таким образом, где нужно вывести одно предложение или несколько слов, вытягиваю из бд целую статью на хххх символов, с тэгами, картинками, и режу ее на пример до 100 символов. Тут я и подумал не многовато ли будет,если у меня например 70 превью на странице, и получается я извлекаю из бд 70 полных статей и их режу до 100-200 символов)). |
|
|
Den1xxx |
7.7.2013, 2:10;
Ответить: Den1xxx
Сообщение
#8
|
|
Режим с ББ-кодами мне больше кстати нравится Больше чем что? Чем режим html? Чем? Вы читать не умеете? Я ясно расписал как у меня работают оба режима, и почему режим BB-кодов мне больше нравится. Читайте что написано. Спорить мне с Вами не о чем, как и незачем повторять ещё раз. |
|
|
alexdrob |
7.7.2013, 3:05;
Ответить: alexdrob
Сообщение
#9
|
|
Боже, кто спорит, я говорю что я за то что бы хранить html чем ббкоды.
А вы говорите что лучше ббкоды чем просто текст... Естественно тут спорить не о чем, ибо мы о разных вещах говорим :) У меня тоже два поля, под описание, и под текст. И тоже есть два режима. можно так http://ybex.com/d/mnjhz7cm24ryiqcnex0cm5yc...vf7n43l8lu.html а можно так http://ybex.com/d/rnf4v6x5q5z7r6xbpcptgkyz...15gwxo73fc.html а можно вот так http://ybex.com/d/dclojfla514ybpfzp7pp5hgs...xodut30ksl.html я просто спрашиваю, зачем хранить ббкоды и каждый раз при выводе их парсить, и зачем ставить <br> руками если есть куча редакторов, с горячими клавишами, очень быстро набирать не кликая мышкой :) |
|
|
Den1xxx |
7.7.2013, 8:51;
Ответить: Den1xxx
Сообщение
#10
|
|
я просто спрашиваю, зачем хранить ббкоды и каждый раз при выводе их парсить, и зачем ставить руками если есть куча редакторов, с горячими клавишами, очень быстро набирать не кликая мышкой :) А как надо — вводить текстом, в базу сохранять с HTML, выводить при редактировании тоже с тегами HTML? Хранить их нужно именно как вводили, и при выводе парсить. Иначе юзер как минимум удивится, вводишь одно — сохраняется другое. Руками никто их не ставит, вы что не видите кнопки в редакторе на скриншоте, который я опубликовал выше? Принцип такой же как на этом форуме — выделил текст, нажал на кнопку [b], получил обрамление <b> При выборе режима в селекте происходит переключение между редакторами — один выгружается, другой загружается. Кстати на самом деле есть ещё режимы bbcodes+HTML и PHP. Но я решил режим PHP не ставить в статьи, а только в статические страницы. Модулем статей пользуются слишком часто, и я побоялся ставить туда этот режим для незнающих, боясь что техподдержке надоест отвечать на вопросы, почему не работает :) |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Как в пушсетках покупают по 100-200 тысяч кликов за день? | 2 | Boymaster | 694 | Вчера, 17:52 автор: Boymaster |
|
Как вы отдыхаете от работы за компом | 151 | adw-kupon.ru | 19860 | 23.4.2024, 13:52 автор: Vmir |
|
Как вы бросили работу и перешли на заработок с сайтов? | 20 | uahomka | 3472 | 23.4.2024, 11:54 автор: Skyworker |
|
Как вывести деньги в Украине с заблокированного Юмани ? | 30 | freeax | 5040 | 20.4.2024, 16:49 автор: Liudmila |
|
Арбитражники, как ведете учет расходов и доходов? | 13 | Boymaster | 2036 | 20.4.2024, 15:06 автор: Boymaster |
Текстовая версия | Сейчас: 25.4.2024, 10:28 |