Я всегда нахожусь в режиме HTML в редакторе, чтобы попытаться заставить простые вещи, такие как разрывы между абзацами, отображаться правильно (используя <p></p>
). Это нормально? Есть ли лучший редактор, который я мог бы использовать?
Что происходит, так это то, что TinyMCE преобразует каждый двойной разрыв строки в исходном коде HTML в <p></p>
и наоборот. Он фактически удалит любой <p/>
, который вы вручную вводите в исходный HTML-код после сохранения, потому что при визуализации содержимого публикации будут добавлены <p>
и </p>
.
Автоматическая замена -<p>
работает только при рендеринге содержимого записи с помощью <?php the_content() ?>
, если вы выводите $post->post_content
напрямую, она не будет проходить через те же ловушки форматирования и будет выглядеть простой и без разрывов строк или абзацев.
Если вам нужно много тегов <br/>
в отображаемой разметке, вам, вероятно, следует найти лучшее решение, основанное на CSS и использовании CSS-свойств margin
или padding
.
Я согласен с некоторыми из вышеперечисленных постов в качестве прямых ответов на вопрос (который предполагает дальнейшее использование редактора 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');
Надеюсь, это поможет! И, честно говоря ... Я никогда не пробовал отключать фильтры вместе с визуальным редактором! Может быть, это действительно помогает в этом отношении!
Я рекомендую TinyMCE Advanced а также, я предпочитаю иметь больший контроль над HTML-кодом, который редактируется пользователем на сайте. Есть опция Stop removing the P and BR tags when saving and show them in the HTML editor
, которая сделает свое дело, по умолчанию она не отмечена, поэтому после установки вам нужно зайти в настройки и включить ее. Еще одним преимуществом является возможность показать/скрыть различные аспекты редактора, чтобы вы могли удалять кнопки, с которыми конечные пользователи могут потенциально поиграть, и попытаться проявить творческий подход к форматированию своего контента! Многие нежелательные параметры включены по умолчанию, поэтому вам нужно войти и удалить ненужные параметры.
Я использую плагин Disable WPautop , который, как и ожидалось, отключает функцию wpautop . Это может быть полезно, в зависимости от вашей ситуации.
Короче говоря: да. Это нормально.
Нет, там нет лучших редакторов.
Вы можете попробовать TinyMCE Advanced и посмотреть, поможет ли это.
Кроме того, если вы используете backticks (`) на этом сайте, он будет экранировать ваш HTML:
<br />
Причина, по которой у вас возникают проблемы, заключается в том, что WordPress предпочитает использовать
теги, которые являются более семантическими, чем разрывы строк.