Форум → tinymce — «режит» теги
Доброго времени суток!
Прошу прощение что отнимаю время, но у меня возникла проблемка с редактором… При попытке создать таблицу, после сохранения, все теги таблицы замещаются на <p>. Как я понял, это связано с настройками в файле v_editor.js
Как я понял, надо добавить в исключение тег. Пробовал по разному. Вышло что-то типа такого:
extended_valid_elements: 'table[td|tr|tbody|tfoot|thead|th|caption],tr,td,tbody,cut,object[width|height|classid|codebase|embed|param],param[name|value],embed[param|src|type|width|height|flashvars|wmode]',
Не работает =). Прошу направить знающих в данном направлении...
ЗЫ. Знания по JS на уровне «интуиции»
Открыто
xZaggix | |
12 Сентября 2015, 20:36 |
Добрый вечер,
нужно посмотреть какие данные уходит на сервер при сохранении (консоль для разработчика в браузере). Возможно дело даже не в редакторе, а в парсере движка. Попробуйте для начало отключить редактор tinymce, переключив его в режим code и сохранить таблицу. Если таблица не порушится, значит точно tinymce, иначе теги поедает парсер движка.
Так же вопрос, какая версия движка используется и где все это сохраняется, в каком модуле. Например, под админом парсер движка отключается в модуле Структура сайта.
"теги поедает парсер движка." — да, действительно он это делает.
Версия (если я правильно посмотрел):
Таблицы пытался сохранять и в каталоге, и в описании страниц и т.д. Практически везде)))
«парсер движка отключается в модуле» — можно поподробней ?
Все, нашел ))) Файл usertext.php
Массивы $jevix->cfgAllowTags(array()) и $jevix->cfgSetTagShort(array()) были пусты. Добавил значение из $jevix->cfgAllowTags(array()) и $jevix->cfgSetTagShort(array()) и заработало ))))
Осталось только дополнить файл на предмет таких тегов как <tbody>, которые генерирует tinymce. Но уже хоть понятно где рыть )))))
Спасибо за помощь!
Настройка парсера в движке осуществляется в этом скрипте: https://github.com/abricos/abricos-core/blob/master/src/includes/usertext.php
Создан тикет на исправление https://github.com/abricos/abricos-core/issues/7
В комментариях тикета необходимо указать какой именно HTML-код поедает парсер.
Версия 0.5.5 древняя. Я сейчас готовлю версию 0.5.7, рекомендую дождаться ее. Думаю в ближайшие недели уже будет выпущен дистрибутив сборки для интернет-магазина.
Важно не забыть внести эти изменения в репозиторий платформы, а то после обновления все вернется обратно.
Вывод таблицы добился. Воспринимает тег <tbody>, но вот никак не могу найти, где вырезает width и другие атрибуты
Гуглил, разные варианты пробовал. Мои правки:
$jevix->cfgAllowTagParams('td', array('colspan'=>'#int','rowspan'=>'#int','align'=>array('right', 'left', 'center', 'justify'),'height'=>'#int','width'=>'#int'));
$jevix->cfgAllowTagParams('table', array('width' => '#int', 'height' => '#int', 'cellpadding' => '#int', 'cellspacing' => '#int', 'border' => '#int', 'style' => '#text', 'align'=>'#text', 'valign'=>'#text'));
$jevix->cfgAllowTagParams('td', array('width' => '#int', 'height' => '#int', 'style' => '#text', 'align'=>'#text', 'valign'=>'#text', 'colspan'=>'#int', 'rowspan'=>'#int'));
$jevix->cfgAllowTagParams('th', array('width' => '#int', 'height' => '#int', 'style' => '#text', 'align'=>'#text', 'valign'=>'#text', 'colspan'=>'#int', 'rowspan'=>'#int'));
$jevix->cfgAllowTagParams('tbody', array('border', 'class', 'width', 'align', 'valign', 'style'));
Не помогают. Подскажете где можно еще посмотреть ?
Jevix — это сторонняя библиотека, вот сайт: http://jevix.ru/
В подобных вопросах я обычно ищу ответы на гитхабе https://github.com/search?q=jevix&type=Code&utf8=%E2%9C%93 (явно с такими настройками разбирались другие)