Спасибо за внимание.
в архиве плагин добавляющий стандартный редактор в качестве WYSIWYG, делался для версии 1.8, на рабочие проекты лучше не ставить иначе весь html ( статьях например) превратится в текст…
будет кому-нибудь интересно попробую доделать…
интересно или нет? )
будет кому-нибудь интересно попробую доделать…
Попробую доделать…
будет кому-нибудь интересно попробую доделать…
всем будет интересно — единый редактор нужная вещь для пользователей сайта :)
Так что вывод мой следующий. Что бы ББ-коды заменялись надо в модели или в плагине в функции по парсингу добавить контент вот в эту функцию.
$inCore->parseSmiles($content, true)
public function addPost($item){ $item = cmsCore::callEvent('ADD_POST', $item); $item['seolink'] = ''; //парсим bb-код перед записью в базу $inCore = cmsCore::getInstance(); // Парсим по отдельности части текста, если есть тег [cut $msg_to = $this->getPostShort($item['content']); $msg_to = $inCore->parseSmiles($msg_to, true); $msg_after = $this->getPostShort($item['content'], false, true); $msg_after = $inCore->parseSmiles($msg_after, true); $cut = $this->getPostCut($item['content']); $item['content_html'] = $msg_to . $cut . $msg_after; } else { $item['content_html'] = $inCore->parseSmiles($item['content'], true); } // Экранируем специальные символы $item['content'] = $this->inDB->escape_string($item['content']); $item['content_html'] = $this->inDB->escape_string($item['content_html']); $sql = "INSERT INTO cms_blog_posts (user_id, cat_id, blog_id, pubdate, title, feel, music, content, content_html, allow_who, edit_times, edit_date, published, seolink, comments) VALUES ('{$item['user_id']}', '{$item['cat_id']}', '{$item['id']}', NOW(), '{$item['title']}', '{$item['feel']}', '{$item['music']}', '{$item['content']}', '{$item['content_html']}', '{$item['allow_who']}', 0, NOW(), '{$item['published']}', '{$item['seolink']}', '{$item['comments']}')"; $result = $this->inDB->query($sql); $post_id = $this->inDB->get_last_id('cms_blog_posts'); cmsInsertTags($item['tags'], 'blogpost', $post_id); if ($post_id){ $item['id'] = $post_id; $item['seolink'] = $this->getPostSeoLink($item); $this->inDB->query("UPDATE cms_blog_posts SET seolink='{$item['seolink']}' WHERE id = '{$post_id}'"); if ($item['published'] && $item['ballow_who'] == 'all') { cmsCore::callEvent('ADD_POST_DONE', $item); } } return $post_id ? $post_id : false; }
Агась, уже пробую, только проблема как я и писал не с парсингом, а с тегами html, со старыми статьями например или с редактированием новых… после того как статью запишешь с bb-code, в смысле уже “отпарсенную”…
Это уже надо делать и править самому. Так как тот редактор который стандартный не Icms, он вставляет теги html. тексты уже надо править самому :(
…с новыми, в которых бб коды уже конвериртировались в теги html, та же беда, просто там где используется bb-code редактор данные сохраняются в базе в двух полях с бб кодами и без них, а в статьях сразу в html…
Ну правильно. Что бы сохранить в html надо для начало заменить ББ-коды в HTML