Поддержка Проблемы и решения Убить автоабзац в редакторе WordPress

  • Приветствую.
    В свое время эту проблему я как-то устранил и конечно же забыл как. Сейчас перенес блог и она снова появилась: как убрать в редакторе автоматически проставление абзаца при нажатии клавиши «интер»?
    Да, я знаю, там у них надо жить шифт+интер, но это вообще не для людей.
    Очень неудобно даже то, что невозможно между строчками даже поставить курсора.
    Благодарю заранее!

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Модератор Yui

    (@fierevere)

    ゆい

    functions.php

    remove_filter( 'the_content', 'wpautop' );
    remove_filter( 'the_excerpt', 'wpautop' );
    Автор fedorov

    (@fedorov)

    Yui Не сработало. Нужно именно в визуальном редакторе убрать. А убралось в на реальной странице.

    • Ответ изменён 5 лет назад пользователем fedorov.
    Модератор Yui

    (@fierevere)

    ゆい

    functions.php :

    
    function tinymce_remove_autop( $init ) {
        $init['forced_root_block'] = false; 
        $init['force_p_newlines'] = false;
        $init['force_br_newlines'] = true;
        return $init;
    }
    add_filter( 'tiny_mce_before_init', 'tinymce_remove_autop' );
    Автор fedorov

    (@fedorov)

    Yui да, я использовал этот код. Он отменяет автоматический абзац по нажатию клавиши интер, но при проставленных абзацах (или двойных /BR) он не дает в визуальном редакторе поставить курсор на место абзаца.

    Возможно я криво объяснил, но думаю Вы поняли. Работать с ним невозможно.

    Нужен какой-то код, который именно не только уберет автоабзац по нажатию интер из визуального редактора, но и даст возможность ставить курсор на место абзаца (то есть на строку между абзацами), как это спокойно можно сделать в обычном редакторе.

    Сейчас визуальный редактор выглядит каким-то несвободным, скованным из-за невозможности поставить на строку между абзацами.

    строку между абзацами

    ENTER — абзац
    CTRL+ENTER — перенос строки.

    Автор fedorov

    (@fedorov)

    SeVlad, к сожалению, куда бы я вашу картинку не вставлял, проблема не решилась…

    проблема не решилась

    Это печально (с)

    Может всё же пробовать понажимать сочетания клавиш?
    Или пришло время узнать про <p> и <br>? 🙂

    Автор fedorov

    (@fedorov)

    Или пришло время узнать

    У меня есть предложение лучше. Давайте в моей теме утроим хор народной самодеятельности? Каждый будет в ней отписываться и демонстрировать свою компетентность.

    Модератор Yui

    (@fierevere)

    ゆい

    Давайте в моей теме утроим хор народной самодеятельности

    тогда мне придется ее закрыть, хоровое пение и народная самодеятельность тут неуместна.

    Автор fedorov

    (@fedorov)

    Yui очень надеюсь, что процитировав меня, вы написали все же не мне.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    да, я использовал этот код. Он отменяет автоматический абзац по нажатию клавиши интер, но при проставленных абзацах (или двойных /BR) он не дает в визуальном редакторе поставить курсор на место абзаца.

    Попробуйте в дополнение к предыдущему фрагменту добавить такой:

    
    function tinymce_replace_p_with_br( $mceInit ) {
    	$mceInit['setup'] = "function( editor ) {
    		editor.on( 'PostProcess', function( ed ) {
    			ed.content = ed.content.replace(/<p>(.*?)<\/p>/gi,'\$1<br /><br />');
    			editor.setContent( ed.content );
    		});
    	}";
    	return $mceInit;
    }
    add_filter( 'tiny_mce_before_init', 'tinymce_replace_p_with_br' );
    
    Автор fedorov

    (@fedorov)

    @sergeybiryukov, Сергей, вы конечно же волшебник. Это лучшее решение, которое я когда либо видел.

    Единственное, он работает не безупречно:
    1. При переключении с обычного редактора на визуальный иногда дергаются абзацы;
    2. Пропадает или прыгает курсор со строки в разные части текста;
    3. Иногда при удалении строки или части текста, он удаляет сразу весь текст.
    4. Были еще какие-то глюки, но я их не зафиксировал мысленно, поскольку проработал за ним еще недолго

    Но я повторюсь, это лучшее решение, которое я когда либо видел.

    Сергей, а бы не хотели доработать и создать соответствующий Плагин? Думаю многим он был бы полезен.
    Я вам так скажу, за 10 лет работы в WordPress ни я ни мои коллеги никогда не работали с визуальным редактором. Он жутко неудобен как раз из-за своей ФИКСИРОВАННОСТИ и невозможности поставить курсор между абзацами. Более скажу, все известные мне плагины, дополняющие визуальный редактор, НЕ РЕШАЮТ ДАННОЙ ПРОБЛЕМЫ.

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

    Но, в любом случае, огромное вам спасибо! Вы как всегда на высоте!

    кота вам!

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Тема «Убить автоабзац в редакторе WordPress» закрыта для новых ответов.