Quote from: dmi3y at Dec 01, 2009, 05:16 AM
Решил пока вопрос с помощью чанков 
{{spo}}Заголовок{{il}}Скрытый текст{{er}}
подскажите как добавить кнопку в ТиниМСЕ которая при нажатие добавит в текст:
{{spo}}Заголовок{{il}}Скрытый текст{{er}}
Подключи плагин template и добавляй какие угодно шаблоны. Такая строчка может быть и шаблоном во внешнем файле.
Принцип:
в tinymce.function.php в определение $tinymceInit дописываешь наподобие:
$tinymceInit.= "template_external_list_url : \"{$base_url}assets/templates/site/tiny_mce/templates/template_ext_list.js\" ,\n";
Только, конечно, со своим путём к файлу
Этот template_ext_list.js имеет вид наподобие:
var tinyMCETemplateList = [
[
"Аннотация с ЛЕВОЙ картинкой",
"assets/templates/site/tiny_mce/templates/introtext_left.htm",
"Аннотация документа в виде таблицы с левой картинкой"
],
[
"Бокс с заголовком",
"assets/templates/site/tiny_mce/templates/block_head.htm",
"Бокс с заголовком и текстом для выделения важных мыслей"
]
];
Это мой пример с двумя шаблонами. Можно сколько угодно наделать. Важна вторая строка - ссылка на файл. Вот там можно записать что угодно - это и будет вставляться в текст страницы.
Здесь формируется массив описаний шаблонов в переменной tinyMCETemplateList. Каждый шаблон имеет заголовок, ссылку на HTM-файл шаблона и описание.
Чанки типа {{spo}} можно и "взорвать" до чистого html, тогда при выборе шаблона будет просматриваться результат в готовом виде, а не текстом.
Есть нюанс с кодировками. Русские имена и пояснения могут кракозяблами отображаться. Для устранения дефекта надо в
assets/plugins/tinymce3270/jscripts/tiny_mce/plugins/template/js/template.js изменить строчку:
getFileContents : function(u) {
var x, d, t = 'text/plain; charset=utf8';
Здесь добавлено
; charset=utf8. После этого всё отображается с русскими символами - и имя шаблона, и описание, и итоговый текст.