Quote from: aleksey.stepanov at Dec 28, 2007, 10:51 AM
мне интересно знать, пишите решение в эту тему
Немного покопавшись в настройках плагина (TinyMCE) в админке, пришел к выводу, что там путно настроить ч.л. невозможно. В частности у меня просто не получилось пробить плагин template и кнопку для него, равно как и пару-тройку других плагинов и кноповок. Поэтому стал копаться в файлах настроек самого TinyMCE. Обнаружил следующее: практически за все настройки плагина отвечает файлик tinymce.functions.php, лежащий в \assets\plugins\tinymce212. С 90-й строки сего файла идет блок настроек морды TinyMCE в редакторе контента. Там и можно добавить свои плагины и кнопки. В частности, и мне пришлось подправить код на следующий:
$plugins = "table,style,advimage,advlink,searchreplace,print,contextmenu,paste,fullscreen,nonbreaking,xhtmlxtras,visualchars,media,template,insertdatetime";
$buttons1 = "undo,redo,selectall,separator,pastetext,separator,search,replace,separator,nonbreaking,hr,charmap,separator,image,link,unlink,anchor,separator,cleanup,removeformat,separator,insertdate,inserttime,preview,separator,forecolor,backcolor,separator,fullscreen,print,code,help";
$buttons2 = "bold,italic,underline,strikethrough,sub,sup,separator,bullist,numlist,outdent,indent,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,styleprops,separator,fontselect,fontsizeselect,formatselect";
$buttons3 = "table,delete_table,delete_col,delete_row,col_after,col_before,row_after,row_before,row_props,cell_props,split_cells,merge_cells,separator,template";
Таким образом, получил приятную для себя морду редактора. Осталось только указать: откуда брать шаблоны кода для плагина template.
Перед строчкой
я забацалследующее:
$template_list = "{$tinyURL}/jscripts/tiny_mce/plugins/template/template_list.js";
$tinymceInit .= " template_external_list_url : \"".$template_list."\",\n";
$tinymceInit .= " button_tile_map : false \n";
В первой строке переменная $template_list - файл с описаниями шаблонов кода для плагина template. Теперь надо в файлике template_list.js указать файл описания шаблончиков. В {$tinyURL}/jscripts/tiny_mce/plugins/template/ копируем сам template_list.js с содержимым:
var tinyMCETemplateList = [
["Simple snippet", "../assets/plugins/tinymce212/jscripts/tiny_mce/plugins/template/templates/snippet1.htm", "Simple HTML snippet."],
["Layout", "../assets/plugins/tinymce212/jscripts/tiny_mce/plugins/template/templates/layout1.htm", "HTML Layout."]
];
а в каталог \assets\plugins\tinymce212\jscripts\tiny_mce\plugins\template\templates кладем snippet1.htm и layout1.htm. Собственно говоря, последние три файла (snippet1.htm, layout1.htm и template_list.js) это - аналоги файлов, входящих в дистрибутив TinyMCE, взятого мной с сайта производителя. Исключение одно - пришлось внести изменения в template_list.js, чтобы указать путь к файлам-шаблончикам.
Ну а дальше - остается только прописать и добавить свои шаблоны кода вместо дежурных.
Вот, в принципе, и все.
Попутно - вопрос: я уже сказал, что пришел к выводу, что путно настроить TinyMCE через его параметры в админке у меня не получилось. Может, я просто не прав? А?