Перейти к содержимому


Фото
* * * * * 5 голосов

TinyMCE Обновление до 4 версии

TinyMCE

Best Answer Kosjak76 , 29.01.2015 - 21:36

Итак, полностью рабочий вариант:

<script language="javascript" type="text/javascript" src="design/js/tinymce/tinymce.min.js"></script>
<script language="javascript">
tinymce.init({
    selector: "textarea.editor_large,textarea.editor_small",
    language : "ru",
    plugins: [
        "advlist autolink lists link image charmap print preview hr anchor pagebreak",
        "searchreplace wordcount visualblocks visualchars code fullscreen",
        "insertdatetime media nonbreaking save table contextmenu directionality",
        "emoticons template paste textcolor colorpicker textpattern responsivefilemanager"
   ],
   toolbar1: "undo redo | bold italic underline | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | styleselect",
   toolbar2: "| responsivefilemanager | link unlink anchor | image media | forecolor backcolor  | print preview code ",
   image_advtab: true ,
   
   external_filemanager_path:"/{$config->subfolder}simpla/design/js/filemanager/",
   filemanager_title:"Responsive Filemanager" ,
   external_plugins: { "filemanager" : "../../../../simpla/design/js/filemanager/plugin.min.js"},
		setup : function(ed) {
		if(typeof set_meta == 'function')
		{
			ed.on('keyUp', function() {
    			set_meta();
			});
			ed.on('change', function() {
    			set_meta();
			});
		}
	}
	{literal}}{/literal});
	function myCustomGetContent( id ) {
		if( typeof tinymce != "undefined" ) {
			var editor = tinymce.get( id );
			if( editor && editor instanceof tinymce.Editor ) {
				return editor.getContent{literal}({format : 'text'}{/literal}).substr(0, 512);
			} else {
				return  jQuery('textarea[name='+id+']').val().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);
			}
		}
		return '';
	}
</script>

tinymce_init.tpl

 

В остальных шаблонах меняем

function generate_meta_description()

{

	if(typeof(tinyMCE.get("annotation")) =='object')

	{

		description = tinyMCE.get("annotation").getContent().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);

		return description;

	}

	else

		return $('textarea[name=annotation]').val().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);

}

На 

function generate_meta_description()

{
 

	if( typeof tinymce != "undefined" )

	{

		return myCustomGetContent( "annotation" );

	}

	else

		return $('textarea[name=annotation]').val().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);
}

Это там где есть краткое описание. Там где нет:

function generate_meta_description()

{

	if( typeof tinymce != "undefined" )

	{

		return myCustomGetContent( "body" );

	}

	else

		return $('textarea[name=body]').val().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);

}

Проверяйте, пробуйте, пишите если что.

Перейти к посту


  • Чтобы отвечать, сперва войдите на форум
94 ответов в теме

#81 Dzof

Dzof
  • Пользователь
  • 5 сообщений
  • Заказчик
  • Версия CMS:2.x

Опубликовано 06.10.2016 - 11:46

В смысле?

Подключение редактора не имеет к этим полям никакого отношения.

Я скачал и установил файлы, которые по ссылке xikarx, в 16 Feb 2016 - 10:31. Там содержатся среди прочих файл post.tpl У меня появились новые поля в админке поста, которые я указал. Штука хорошая, но требует подключения к БД, очевидно...



#82 limp

limp
  • Пользователь
  • 1 сообщений
  • Пользователь
  • Откуда:Днепропетровск

Опубликовано 20.11.2016 - 22:01

Добрый вечер! Боюсь сочтёте за глупость, но всё же спрошу. К решению обновить TinyMCE пришел, после того когда понял, что он режет код  при сохранении, причём выборочно. такй просто вырезает напрочь:

 


<style type="text/css">
.os-form-wrap {
    border: 5px solid #0799ff;
    padding: 22px 40px;
    width: 100%;
}
</style>

 

Такой пропускает: 

<link rel="Stylesheet" href="https://os/excursion/tour.css" type="text/css" />
<script src="https://js/excursion/" type="text/javascript"></script>

Так вот, версия 4.1 - режет и то и другое. Так вот вопрос, есть ли возможность отключить этот фильтр? Спасибо!



#83 MRGLONIN

MRGLONIN
  • Пользователь
  • 76 сообщений
  • Дизайн

Опубликовано 17.01.2017 - 17:19

Не работает автозаполнения описания бренда. 

function generate_meta_description()

{

	if( typeof tinymce != "undefined" )

	{

		return myCustomGetContent( "description" );

	}

	else

		return $('textarea[name=description]').val().replace(/(<([^>]+)>)/ig," ").replace(/(\&nbsp;)/ig," ").replace(/^\s+|\s+$/g, '').substr(0, 512);

}

Заполняет все кроме описания. Пробовал 2 других вариант. Которые где есть краткое описание и где нету.  


Изменено: MRGLONIN, 17.01.2017 - 17:20


#84 griin

griin
  • Пользователь
  • 3 сообщений

Опубликовано 04.03.2017 - 18:45

Потестировал http://www.responsivefilemanager.com/, отлично работает с последним tinymce (4.1.7)

 

файл tinymce_init.tpl

<script language="javascript" type="text/javascript" src="design/js/tinymce/tinymce.min.js"></script>
<script language="javascript">


tinymce.init({
    selector: "textarea.editor_large,textarea.editor_small",
    language : "ru",
    plugins: [
         "advlist autolink link image lists charmap print preview hr anchor pagebreak",
         "searchreplace wordcount visualblocks visualchars insertdatetime media nonbreaking",
         "table contextmenu directionality emoticons paste textcolor responsivefilemanager"
   ],
   toolbar1: "undo redo | bold italic underline | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | styleselect",
   toolbar2: "| responsivefilemanager | link unlink anchor | image media | forecolor backcolor  | print preview code ",
   image_advtab: true ,
   
   external_filemanager_path:"/simpla/design/js/filemanager/",
   filemanager_title:"Responsive Filemanager" ,
   external_plugins: { "filemanager" : "/simpla/design/js/filemanager/plugin.min.js"}
 });


</script>
 

заливаем из скаченного архива папку "filemanager" в "/simpla/design/js", ну и папку плагина "responsivefilemanager" в "/simpla/design/js/tinymce/plugins"

 

Далее в файле /simpla/design/js/filemanager/config/config.php прописываем нужные адреса к нашей папке с загрузками

$upload_dir = '/files/uploads/';
$current_path = '../../../../files/uploads/';
$thumbs_base_path = '../../../../files/thumbs/';

 

И не забудьте создать доп. папку для превьюшек "thumbs" в папке "/files/", установив ей права 777

У меня при загрузке картинки любого размера пишет не достаточно памяти, а например zip архив грузит без проблем. подскажите как решить проблему загрузки картинок



#85 madwp

madwp
  • Пользователь
  • 53 сообщений
  • Откуда:Москва

Опубликовано 16.09.2017 - 14:26

Походу ни у кого ни каких проблем нету :)



#86 a13x

a13x
  • Забаненый
  • 213 сообщений
  • Дизайн, Программирование, Верстка, SEO, Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 15.01.2018 - 16:36

Рекомендую в кач-ве файлового менеджера использовать moxiemanager.

http://study-time.ru...oxiemanager.php

 

responsivefilemanager очень тяжелый и при каждом обновлении каталога подтягивает все js файлы вместо того чтобы передавать все json'ом.

 

Мой вариант подключения если кому интересно (как это работает по ссылке выше):

 

<script src="/tinymce4/plugins/moxiemanager/js/moxman.loader.min.js"></script>
<script src="/tinymce4/tinymce.min.js"></script>
<script>tinymce.PluginManager.load('moxiemanager', '/tinymce4/plugins/moxiemanager/plugin.min.js');</script>
{literal}
<script>
tinymce.init({
        language:"ru",
        selector: ".tinymce",
        theme: "modern",
        plugins: [
            "advlist autolink lists link image charmap print preview anchor codemagic",
            "fontawesome noneditable searchreplace visualblocks codemirror fullscreen",
            "insertdatetime emoticons media table contextmenu moxiemanager",
            "hr pagebreak wordcount  visualchars nonbreaking save directionality template paste textpattern imagetools easyColorPicker"
        ],
        codemirror: {
            indentOnInit: true,
            smartIndent: true,
            path: 'codemirror-4.8',
            config: {
                indentUnit: 4,
                lineNumbers: true,
                mode: "htmlmixed",
                indentWithTabs: true,
                lineWrapping: true,
                gutters: ['CodeMirror-lint-markers', 'CodeMirror-linenumbers', 'CodeMirror-foldgutter'],
                foldGutter: true,
                extraKeys: {
                    "Ctrl-Space": "autocomplete",
                    "F11": function (cm) {
                        cm.setOption("fullScreen", !cm.getOption("fullScreen"));
                    },
                    "Esc": function (cm) {
                        if (cm.getOption("fullScreen")) cm.setOption("fullScreen", false);
                    }
                }
            },
            jsFiles: [
                'addon/display/fullscreen.js',
                'addon/fold/foldcode.js',
                'addon/fold/foldgutter.js',
                'addon/fold/brace-fold.js',
                'addon/fold/xml-fold.js',
                'addon/fold/markdown-fold.js',
                'addon/fold/comment-fold.js',
                'addon/edit/trailingspace.js',
                'mode/xml/xml.js',
                'mode/javascript/javascript.js',
                'mode/css/css.js',
                'mode/htmlmixed/mixed.js',
                'mode/smarty/smarty.js',
                'mode/smartymixed/smartymixed.js',
            ],
            cssFiles: [
                'addon/display/fullscreen.css',
                'addon/fold/foldgutter.css',
            ]
        },
        content_css: ['https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css'],
        toolbar: "emoticons fontawesome | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist | easyColorPicker | link media insertfile image | code",
        style_formats: [
        {title: 'Заголовки', items: [
            {title: 'Заголовок H1', block: 'h1'},
            {title: 'Заголовок H2', block: 'h2'},
            {title: 'Заголовок H3', block: 'h3'},
            {title: 'Заголовок H4', block: 'h4'},
            {title: 'Заголовок H5', block: 'h5'},
            {title: 'Заголовок H6', block: 'h6'}
        ]},

        {title: 'Шрифты', items: [
            {title: 'Open Sans', inline: 'span', styles: { 'font-family':'Open Sans'}},
            {title: 'Arial', inline: 'span', styles: { 'font-family':'arial'}},
            {title: 'Book Antiqua', inline: 'span', styles: { 'font-family':'book antiqua'}},
            {title: 'Calibri', inline: 'span', styles: { 'font-family':'calibri'}},
            {title: 'Comic Sans MS', inline: 'span', styles: { 'font-family':'comic sans ms,sans-serif'}},
            {title: 'Courier New', inline: 'span', styles: { 'font-family':'courier new,courier'}},
            {title: 'Georgia', inline: 'span', styles: { 'font-family':'georgia,palatino'}},
            {title: 'Helvetica', inline: 'span', styles: { 'font-family':'helvetica'}},
            {title: 'Impact', inline: 'span', styles: { 'font-family':'impact,chicago'}},
            {title: 'Symbol', inline: 'span', styles: { 'font-family':'symbol'}},
            {title: 'Tahoma', inline: 'span', styles: { 'font-family':'tahoma'}},
            {title: 'Terminal', inline: 'span', styles: { 'font-family':'terminal,monaco'}},
            {title: 'Times New Roman', inline: 'span', styles: { 'font-family':'times new roman,times'}},
            {title: 'Verdana', inline: 'span', styles: { 'font-family':'Verdana'}}
        ]},

        {title: 'Размеры', items: [
            {title: '8px', inline: 'span', styles: { 'font-size':'8px'}},
            {title: '12px', inline: 'span', styles: { 'font-size':'12px'}},
            {title: '14px', inline: 'span', styles: { 'font-size':'14px'}},
            {title: '16px', inline: 'span', styles: { 'font-size':'16px'}},
            {title: '18px', inline: 'span', styles: { 'font-size':'18px'}},
            {title: '20px', inline: 'span', styles: { 'font-size':'20px'}},
            {title: '22px', inline: 'span', styles: { 'font-size':'22px'}},
            {title: '28px', inline: 'span', styles: { 'font-size':'28px'}},
            {title: '32px', inline: 'span', styles: { 'font-size':'32px'}},
            {title: '36px', inline: 'span', styles: { 'font-size':'36px'}},
            {title: '42px', inline: 'span', styles: { 'font-size':'42px'}},
            {title: '56px', inline: 'span', styles: { 'font-size':'56px'}},
            {title: '72px', inline: 'span', styles: { 'font-size':'72px'}},
        ]},

        {title: 'Блоки', items: [
            {title: 'p', block: 'p'},
            {title: 'div', block: 'div'},
            {title: 'span', block: 'span'},
            {title: 'pre', block: 'pre'}
        ]},

        {title: 'Контейнеры', items: [
            {title: 'section', block: 'section', wrapper: true, merge_siblings: false},
            {title: 'article', block: 'article', wrapper: true, merge_siblings: false},
            {title: 'blockquote', block: 'blockquote', wrapper: true},
            {title: 'code', block: 'code', wrapper: true},
            {title: 'hgroup', block: 'hgroup', wrapper: true},
            {title: 'aside', block: 'aside', wrapper: true},
            {title: 'figure', block: 'figure', wrapper: true}
        ]}
        ],
        preformatted : true,
        image_advtab: true,
        apply_source_formatting : true,
        theme_advanced_resizing: true,
        autosave_ask_before_unload: false,
        height: 400,
        relative_urls: false,
        force_br_newlines : true,
        force_p_newlines : false,
        forced_root_block : '',
        visualblocks_default_state: false,
        verify_html : false,
        entity_encoding: 'raw',
});
</script>
{/literal}
 

Изменено: a13x, 15.01.2018 - 16:51


#87 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 6 555 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 15.01.2018 - 18:45


Рекомендую в кач-ве файлового менеджера использовать moxiemanager.
http://study-time.ru...oxiemanager.php

Чем он лучше responsive filemanager?

#88 a13x

a13x
  • Забаненый
  • 213 сообщений
  • Дизайн, Программирование, Верстка, SEO, Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 15.01.2018 - 22:41

Я же написал, responsive очень тяжелый и тащит с каждым запросом все библиотеки по нескольку раз, вместо того чтобы отдать содержимое директории json'ом. Также он не создаёт превью фоток (насколько мне известно) из-за чего содержимое папки будет долго грузится, а moxiemanager делает это автоматом.

+ в moxiemanager есть редактор фото и много других хороших функций. я например сделал авторизацию на своей системе через js библиотеку moxiemanager'a.



#89 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 6 555 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 16.01.2018 - 02:49

Я же написал, responsive очень тяжелый и тащит с каждым запросом все библиотеки по нескольку раз, вместо того чтобы отдать содержимое директории json'ом. Также он не создаёт превью фоток (насколько мне известно) из-за чего содержимое папки будет долго грузится, а moxiemanager делает это автоматом.
+ в moxiemanager есть редактор фото и много других хороших функций. я например сделал авторизацию на своей системе через js библиотеку moxiemanager'a.

Пруфы

#90 a13x

a13x
  • Забаненый
  • 213 сообщений
  • Дизайн, Программирование, Верстка, SEO, Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 16.01.2018 - 10:30

Пруфы

зайди на сайт responsive filemanager, открой консольку и посмотри своими глазками :D



#91 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 6 555 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 16.01.2018 - 15:27

зайди на сайт responsive filemanager, открой консольку и посмотри своими глазками :D

Открыл, посмотрел, проверил, всё отлично работает.
Так что идём и свои глазки протираем от пыли.

#92 a13x

a13x
  • Забаненый
  • 213 сообщений
  • Дизайн, Программирование, Верстка, SEO, Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 16.01.2018 - 23:00

Я удивляюсь что такой криворукий как ты забыл в программировании раз не можешь посмотреть кол-во запросов?

Приходится постоянно разжевывать и показывать. Мало того, ты ещё и неадекватно общаешься, как быдло приподъездное.

Держи. Потратил 5 минут чтобы показать тебе кол-во запросов захода в ПУСТУЮ папку в двух редакторах.

Во втором случае, если ты всё же раскроешь глаза, 2 из 3-ёх запросов уходят на яндекс т.к. подключена метрика. В итоге от сервера приходит ОДИН ответ, вместо 33 файлов как в первом случае.

https://yadi.sk/d/I6VJKMrV3RWsPo



#93 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 6 555 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 16.01.2018 - 23:43

Я удивляюсь что такой криворукий как ты забыл в программировании раз не можешь посмотреть кол-во запросов?
Приходится постоянно разжевывать и показывать. Мало того, ты ещё и неадекватно общаешься, как быдло приподъездное.
Держи. Потратил 5 минут чтобы показать тебе кол-во запросов захода в ПУСТУЮ папку в двух редакторах.
Во втором случае, если ты всё же раскроешь глаза, 2 из 3-ёх запросов уходят на яндекс т.к. подключена метрика. В итоге от сервера приходит ОДИН ответ, вместо 33 файлов как в первом случае.
https://yadi.sk/d/I6VJKMrV3RWsPo

Фу какое не воспитанное быдло, тьфу на вас...

#94 Anticommunist

Anticommunist
  • Пользователь
  • 9 сообщений
  • Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 11.07.2018 - 12:34

Большое спасибо автору за данный редактор. Есть пара вопросов:

1. У меня в старой версии были 2.х был очень мощный редактор табилиц, в частности там можно было задавать заливку строк и столбцов выборочно чёт-нечет. В этой версии каждую строку нужно заливать в ручную... Ну и ещё куча всего по мелочи, работа с рамками и т.д. Так вот, как можно в 4.х версию внести табличный плагин из 2.х? 

 

2. В данной версии есть возможность вставлять заранее заготовленные шаблоны, но где они должны лежать, как их туда экспортировать из редактора? 

 

3. В этом плагине можно добавлять кнопки на панель, но как это сделать? Где режим настроек?

 

Спасибо за ответы, заранее извиняюсь за возможную тупость)))



#95 shooroop

shooroop
  • Фрилансер
  • 685 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Antarktida

Опубликовано 11.07.2018 - 20:27

Большое спасибо автору за данный редактор. Есть пара вопросов:

1. У меня в старой версии были 2.х был очень мощный редактор табилиц, в частности там можно было задавать заливку строк и столбцов выборочно чёт-нечет. В этой версии каждую строку нужно заливать в ручную... Ну и ещё куча всего по мелочи, работа с рамками и т.д. Так вот, как можно в 4.х версию внести табличный плагин из 2.х? 

 

2. В данной версии есть возможность вставлять заранее заготовленные шаблоны, но где они должны лежать, как их туда экспортировать из редактора? 

 

3. В этом плагине можно добавлять кнопки на панель, но как это сделать? Где режим настроек?

 

Спасибо за ответы, заранее извиняюсь за возможную тупость)))

 

 

http://r-band.ru/how...-redaktora.html

 

https://habr.com/post/266337/

 

плагины https://www.tiny.cloud/docs/plugins/

 

3 Кидаем в папку плагинов тини, а в tinymce.plugin.php добавляем имя плагина







Также с меткой «TinyMCE»

0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых