Простое решение для разметки текста CakePHP для редактирования новостных сообщений
Вопрос
При первом поиске в Интернете простого CakePHP-способа преобразования небольших новостных сообщений (написанных неспециалистом) Я нашел flay
метод в TextHelper
.Однако оказалось, что это уже было устаревший, ссылаясь на TextileHelper с умными штанами.
Textile действительно кажется очень компетентным языком разметки.Тем не менее, я боюсь, что это слишком сложно для нетехнического писателя.Все, чего он хочет, - это иметь возможность писать абзацы, разделенные двойным символом новой строки, и вставлять гиперссылки такими, какие они есть.
Есть ли простой и не раздутый способ добиться этого с помощью CakePHP?
Решение
Такие языки, как Текстиль или Уценка (используется, например, в stackoverflow) они отлично подходят для людей, которые привыкли редактировать текст в "обычном режиме" и, я думаю, немного разбираются в технических вопросах...
Но для "настоящие нормальные люди" которые не так уж много понимают в компьютерах, они на самом деле не удобны в использовании и не отказоустойчивы :-( -- и находятся слишком далеко от MS Word ^^
Даже мне, понимающему, почему используются эти языки и как они работают, часто приходится редактировать свои посты на SO из-за ошибок типа "не вставляю пустую строку в нужное место, чтобы распознать то или иное :-(
Хорошим решением для ваших пользователей было бы использовать какой-нибудь редактор WYSIWYG, чтобы они могли вводить свой текст, использовать несколько маленьких значков, похожих на MS Word, для его форматирования и все такое.
Распространенными примерами таких действий являются
- Крошечный кусочек (эта ссылка указывает на страницу "простая демонстрация", которая может быть как раз тем, что нужно вашим пользователям)
- FCKeditor - Редактор
Их не так уж сложно интегрировать в существующее приложение, и они действительно могут сделать ваш серверный офис более удобным для пользователя!
И, в зависимости от способа редактирования текста, вы можете активировать больше или меньше опций, чтобы наилучшим образом соответствовать их потребностям.
Но есть много других ;-)
Это означало бы, что вы храните HTML-текст в своей базе данных ;и, по соображениям безопасности, вы можете захотеть очистить его, используя что-то вроде Htmlочиститель.
Другие советы
Я думаю, что вы можете создать свой собственный набор разметки, если в нем будет только несколько членов. Работать с этими метками легко, нужно просто заменить их с помощью регулярных выражений после отправки.
Еще одно решение - добавить JavaSctipt WYSIWYG на ваш сайт. Что-то вроде TinyMCE может сделать редактирование еще менее болезненным.