<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0">

<channel>

<title>Блог Чуденкова Алексея, заметки с тегом: tinymce</title>
<link>https://blog.chudenkov.ru/tags/tinymce/</link>
<description></description>
<generator>E2 (v3365; Aegea)</generator>

<item>
<title>SimplaCMS: обновляем TinyMCE до 4 версии</title>
<guid isPermaLink="false">57</guid>
<link>https://blog.chudenkov.ru/all/simplacms-obnovlyaem-tinymce-do-4-versii/</link>
<comments>https://blog.chudenkov.ru/all/simplacms-obnovlyaem-tinymce-do-4-versii/</comments>
<description>
&lt;p&gt;Кривой TinyMCE 3 версии в 2019 году уже невозможно использовать. Он регулярно вставляет всякие спаны и непечатаемые пробелы, поэтому нужно было обновить его версию. &lt;br /&gt;&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Открываем /simpla/design/js/ и создаём папку tinymce&lt;/li&gt;
&lt;li&gt;&lt;a href="http://download.moxiecode.com/tinymce/tinymce_4.1.7_jquery.zip"&gt;Скачаем&lt;/a&gt; сам TinyMCE и положим содержимое папки js в папку tinymce. Краткая структура файлов и папок в папке tinymce должна быть такой:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class="e2-text-code"&gt;&lt;code&gt;-langs
-plugins
-skins
-themes
--jquery.tinymce.min.js
--tinymce.min.js&lt;/code&gt;&lt;/pre&gt;&lt;ol start="3"&gt;
&lt;li&gt;Открываем файл  /simpla/design/html/tinymce_init.tpl и меняем полностью его содержимое на:&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class="e2-text-code"&gt;&lt;code&gt;&amp;lt;script language=&amp;quot;javascript&amp;quot; type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;design/js/tinymce/tinymce.min.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt;
tinymce.init({
    selector: &amp;quot;textarea.editor_large,textarea.editor_small&amp;quot;,
    language : &amp;quot;ru&amp;quot;,
    plugins: [
        &amp;quot;advlist autosave autolink lists link image charmap print preview hr anchor pagebreak&amp;quot;,
        &amp;quot;searchreplace wordcount charactercount charmap visualblocks visualchars code fullscreen&amp;quot;,
        &amp;quot;insertdatetime media nonbreaking save table contextmenu directionality&amp;quot;,
        &amp;quot;emoticons template paste textcolor colorpicker textpattern  &amp;quot;
   ],
   toolbar1: &amp;quot;undo redo | bold italic underline | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link unlink anchor | image media charmap blockquote | forecolor backcolor | removeformat print preview code emoticons &amp;quot;,
menubar: '',
   verify_html: false, 
   image_advtab: true,
        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 != &amp;quot;undefined&amp;quot; ) {
            var editor = tinymce.get( id );
            if( editor &amp;amp;&amp;amp; editor instanceof tinymce.Editor ) {
                return editor.getContent{literal}({format : 'text'}{/literal}).substr(0, 512);
            } else {
                return  jQuery('textarea[name='+id+']').val().replace(/(&amp;lt;([^&amp;gt;]+)&amp;gt;)/ig,&amp;quot; &amp;quot;).replace(/(\&amp;amp;nbsp;)/ig,&amp;quot; &amp;quot;).replace(/^\s+|\s+$/g, '').substr(0, 255);
            }
        }
        return '';
    }
&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;ol start="4"&gt;
&lt;li&gt;Далее необходимо поправить автогенерацию meta description в админке. Для этого нужно полностью заменить функцию generate_meta_description() в файлах:
&lt;ul&gt;
  &lt;li&gt;/simpla/design/html/product.tpl&lt;/li&gt;
  &lt;li&gt;/simpla/design/html/post.tpl&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class="e2-text-code"&gt;&lt;code&gt;// Обновлённая функция, которую нужно вставить в файлы
function generate_meta_description()
{
	if( typeof tinymce != &amp;quot;undefined&amp;quot; )
	{
		return myCustomGetContent( &amp;quot;annotation&amp;quot; );
	}
	else
		return $('textarea[name=annotation]').val().replace(/(&amp;lt;([^&amp;gt;]+)&amp;gt;)/ig,&amp;quot; &amp;quot;).replace(/(\&amp;amp;nbsp;)/ig,&amp;quot; &amp;quot;).replace(/^\s+|\s+$/g, '').substr(0, 255);
}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В файле /simpla/design/html/category.tpl полностью обновляем функцию:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code&gt;function generate_meta_description()
{
	if( typeof tinymce != &amp;quot;undefined&amp;quot; )
	{
		return myCustomGetContent( &amp;quot;description&amp;quot; );
	}
	else
		return $('textarea[name=description]').val().replace(/(&amp;lt;([^&amp;gt;]+)&amp;gt;)/ig,&amp;quot; &amp;quot;).replace(/(\&amp;amp;nbsp;)/ig,&amp;quot; &amp;quot;).replace(/^\s+|\s+$/g, '').substr(0, 255);
}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В файле /simpla/design/html/page.tpl полностью обновляем функцию:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code&gt;function generate_meta_description()
{
	if( typeof tinymce != &amp;quot;undefined&amp;quot; )
	{
		return myCustomGetContent( &amp;quot;body&amp;quot; );
	}
	else
		return $('textarea[name=body]').val().replace(/(&amp;lt;([^&amp;gt;]+)&amp;gt;)/ig,&amp;quot; &amp;quot;).replace(/(\&amp;amp;nbsp;)/ig,&amp;quot; &amp;quot;).replace(/^\s+|\s+$/g, '').substr(0, 255);
}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;b&gt;Результат работы&lt;/b&gt;&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://blog.chudenkov.ru/pictures/tinymcesimplacms.jpg" width="1477" height="795" alt="" /&gt;
&lt;/div&gt;
</description>
<pubDate>Tue, 14 May 2019 19:37:36 +0300</pubDate>
</item>


</channel>
</rss>