Intereting Posts
Добавление персонализированного типа сообщения для подсчета в категории Где код Featured Image, хранящийся в WP? Заменить слово словом в строке URL Код для автоматического истечения срока действия сообщений через 30 дней Последние сообщения с изображением или обратным изображением с постоянной ссылкой Текущий класс элемента меню Избегайте регистрации пользователей конкретным поставщиком электронной почты Проверьте, существует ли Заголовок сообщения, Вставьте сообщение, если нет, добавьте добавочный номер в Мета, если Рекомендации по загрузке видео в WordPress Использование javascript на моем сайте для создания вложенных вкладок Производительность wp_get_attachment_image_srcset () и wp_get_attachment_image_url () WordPress Mediaelement – Youtube Video Вставить параметры Чистый пользовательский URL для Serach + Таможенная таксономия Пользовательские таксономии в выпадающем меню Создать URL-адрес для выбора входных данных?

Избегайте преобразования «>» в ​​& gt;

Я использую плагин Markdown и пытаюсь написать blockquote

Как это

Но WordPress конвертирует «>» в ​​объект html, поэтому результат выглядит

> как это

Есть ли способ избежать этого?

Фильтрация the_content

 function wpse72941_content_filter( $content ) { $new_content = ''; foreach( preg_split( '/((\r?\n)|(\r\n?))/', $content ) as $line ) { $new_content .= preg_replace( '/^>/', '>', $line ) . '\r\n'; } return $new_content; } add_filter( 'the_content', 'wpse72941_content_filter', 1 ); 

Я не знаю ваш плагин markdown – для вышеупомянутого подхода я предположил, что уценка интерпретируется после того, как сообщение извлекается из базы данных, а не до того, как оно будет сохранено в том же самом. Т.е., что плагин the_content также фильтрует the_content .

Регулярное выражение ^> match > iff это первые четыре символа строки. В приведенном выше тексте содержимое повторяется по строкам, поэтому все > объекты в начале строки преобразуются обратно в > символы.

Когда фильтр добавляется, мы устанавливаем высокий приоритет ( 1 ), чтобы преобразование нашего объекта выполнялось до интерпретации уценки.

Вышеупомянутое будет работать, если вы добавите его в функции functions.php вашей темы, но, вероятно, лучше вставьте его в плагин. На самом деле плагин уценки должен позаботиться о нем сам.

Предотвращение TinyMCE от конвертирующих объектов

Если вам нужно прекратить преобразование сущности в том месте, где оно произошло, прежде чем оно будет записано в базу данных, вам придется изменить конфигурацию TinyMCE (редактор), entities и / или параметры entity_encoding выглядят многообещающими.
Существует фильтр tiny_mce_before_init который может передавать пользовательские значения конфигурации в редактор WP.

Я бы также представил рабочий пример, не так ли:

Тип кодирования: raw | Все символы будут сохранены в форме без сущности, кроме этих объектов XML по умолчанию: & < > "
из документации TinyMCE по entity_encoding

Таким образом, для конкретного объекта, о котором идет речь, это, по-видимому, более активно.
Это также может быть причиной того, почему отключить визуальный редактор может быть недостаточно.
Возможно, это может быть комбо 'named' как значение для entity_encoding и список без gt для entities .
В противном случае событие onPostProcess будет последним способом.

Однако жизнь была бы проще, если бы это предположение было истинным, и фильтрация сообщения в базе данных была бы достаточной.

Если вы используете визуальный редактор, то > будет автоматически преобразован. Отключите визуальный редактор и используйте его.

Я решаю это, используя:

 function my_content_filter( $content ) { $new_content = str_replace('>','>',$content); return $new_content; } add_filter( 'the_content', 'my_content_filter', 1 ); 

Я думаю, что это не гламурно, но, это работает.