tooshel
  • 0
Новичок

Как улучшить обработку разрывов строк в редакторе WYSIWYG?

  • 0

Я всегда нахожусь в режиме HTML в редакторе, чтобы попытаться сделать так, чтобы простые вещи, такие как разрывы между абзацами, отображались правильно (используя <p></p> ). Это нормально? Есть ли лучший редактор, который я мог бы использовать?

Share
  1. Что происходит, так это то, что TinyMCE преобразует каждый двойной разрыв строки в исходном коде HTML в <p></p> и наоборот. Он фактически удалит все <p/>, что вы вручную вводите в источнике HTML после сохранения, потому что, когда содержимое сообщения будет отображено, <p> и </p> будет добавлено.

    Автоматическая <p> замена работает только тогда, когда вы визуализируете содержимое поста с помощью <?php the_content() ?>, если вы выводите $post->post_content напрямую, оно не будет проходить через те же крючки форматирования и будет выглядеть просто, без разрывов строк или абзацев.

    Если вам нужно много <br/> тегов в отображаемой разметке, вам, вероятно, следует найти лучшее решение, основанное на CSS и использовании свойств CSS margin или.padding

    • 0
  2. Я согласен с некоторыми из приведенных выше сообщений как с прямыми ответами на вопрос (который предполагает постоянное использование редактора WYSIWYG). Но после пробы я должен порекомендовать хотя бы передумать и перейти на HTML-редактор.

    Если предположить, что ты все еще со мной (ты рассматриваешь это как вариант), есть еще кое-что. «Ах, — скажете вы, — HTML-редактор до сих пор добавляет разрывы строк и вообще меня бесит!» Верно, именно поэтому вам нужно удалить фильтр auto-p. На всякий случай, поскольку я переключаюсь на максимально чистый HTML, я отключаю текстуризатор, который обрабатывает такие вещи, как фигурные кавычки.

    Зайдите в редактор вашей темы. Перейдите к файлу «Функции темы» (functions.php). Добавьте следующее:

    remove_filter ('the_content', 'wpautop');
    remove_filter('the_content', 'wptexturize');
    

    Но я также добавляю это, если планирую использовать выдержки из поста/страницы:

    remove_filter ('the_excerpt', 'wpautop');
    remove_filter('the_excerpt', 'wptexturize');
    

    Надеюсь, это поможет! И, честно говоря… Я никогда не пробовал отключать фильтры вместе с визуальным редактором! Может быть, это действительно помогает и в этом отношении!

    • 0
  3. Я также рекомендую TinyMCE Advanced, я предпочитаю больше контролировать HTML-код, редактируемый пользователем на сайте. Есть опция, Stop removing the P and BR tags when saving and show them in the HTML editor которая поможет, по умолчанию она не отмечена, поэтому после установки вам нужно зайти в настройки и включить ее. Еще одним преимуществом является возможность отображать/скрывать различные аспекты редактора, чтобы вы могли удалить кнопки, с которыми конечные пользователи потенциально могли бы поиграть и попытаться «творчески» подходить к форматированию своего контента! Многие нежелательные параметры включены по умолчанию, поэтому вам нужно войти и удалить ненужные параметры.

    • 0
  4. Короче: да. Это нормально.

    Нет, лучших редакторов нет.

    Вы можете попробовать TinyMCE Advanced и посмотреть, поможет ли это.

    Кроме того, если вы используете обратные кавычки (`) на этом сайте, он будет экранировать ваш html:

    <br />

    • 0
  5. Я использую плагин Disable WPautop, который, как и положено, отключает функцию wpautop. Это может быть полезно, в зависимости от вашей ситуации.

    • 0
  6. Причина, по которой у вас возникли проблемы, заключается в том, что WordPress предпочитает использовать

    теги, которые более семантичны, чем разрывы строк.

    • 0

Оставить ответ

You must login to add an answer.