Часто требуется кастомизировать вид редактора ввода текста - многие кнопки, идущие по дефолту просто не нужны, а некоторых не хватает. Как добавить свою кнопку в редактор написано в этом мануале, а я здесь опишу как создавать свои наборы кнопок и иметь несколько редакторов
Cotonti по дефолту уже содержит два набора кнопок для маркитапа - для ввода текста страниц и текста комментов. Если вы разберетесь, как это сделано, вы сможете делать свои наборы.
Итак.
1. В plugins/markitup/markitup.header.php происходит следующая инициализация редактора:
<script type="text/javascript" >
mySettings.previewAutorefresh = '.$autorefresh.';
$(document).ready(function() {
$("textarea.editor").markItUp(mySettings);
$("textarea.minieditor").markItUp(mini);
});
</script>
Как мы видим, в системе заводятся два редактора markitup, один с настройками mySettings (для страниц, вызываемый по <textarea class="editor"></textarea>), другой - с mini (для комментов, вызываемый по <textarea class="minieditor">). Для создания своего набора добавляете сюда третьей строкой инициализацию своего набора.
2. Где задаются эти mySettings и mini ? В plugins/markitup/js/set.js . Вот, например, инициализация mini:
var mini = {
previewParserVar: 'text',
previewPosition: 'before',
previewParserPath: 'preview.php', // path to your BBCode parser
onEnter: {keepDefault: false, replaceWith: '\n'},
markupSet: [
{name: L.bold, className:'mBold', key:'B', openWith:'[b]', closeWith:'[/b]'},
{name: L.italic, className:'mItalic', key:'I', openWith:'[i]', closeWith:'[/i]'},
{name: L.underline, className: 'mUnderline', key:'U', openWith:'[u]', closeWith:'[/u]'},
{name: L.h1, className: 'mH1', openWith:'[h1]', closeWith:'[/h1]' },
{name: L.h2, className: 'mH2', openWith:'[h2]', closeWith:'[/h2]' },
{name: L.h3, className: 'mH3', openWith:'[h3]', closeWith:'[/h3]' }
]
}
Набор кнопок задается в markupSet: , как видим, здесь оставлены только кнопки болд, италик, подчеркивание и три вида заголовков.
Thanked: 76 kez