#wordpress #tinymce
#wordpress #tinymce
Вопрос:
Я использую ACF и использую расширенный плагин TinyMCE.
При редактировании сообщений редактор вставляет новые ссылки в теги p, что я пытаюсь предотвратить, поскольку я использую тег code, и если в коде в теге code есть возврат, он оборачивает его в новый блок p и code, который затем нарушает макет сообщения.
Я попытался поиграть с настройками плагина, чтобы проверить удаление тегов p, однако безуспешно.
Я искал и обнаружил, что я должен установить принудительный корневой блок в значение false, однако я все еще не могу заставить его работать:
add_filter('tiny_mce_before_init', function ($init) {
//Prevent <p> tags in editor
$init['forced_root_block'] = false;
$init['force_br_newlines'] = false;
$init['force_p_newlines'] = false;
$init['convert_newlines_to_brs'] = false;
return $init;
});
При просмотре сообщения на вкладке «Текст» в коде не отображаются теги P, однако при редактировании на вкладке «Визуальный» все это разбивается на теги p.
Есть идеи о том, как решить?
Ответ №1:
Когда вы выводите содержимое, находясь в цикле, вы можете очистить вывод, чтобы удалить все используемые теги wp_strip_all_tags
.
Правильно удалите все HTML-теги, включая скрипт и стиль.
<?php wp_strip_all_tags( the_content(), true ); ?>
( true
или false
для разрывов строк). То же самое для ACF, просто включите в него вывод.
Кроме того, вы можете удалить любой <p>
тег auto, применяемый в качестве разрыва строки, удалив wpautop
via remove_filter
в вашем function.php
файле.
<?php remove_filter( 'the_content', 'wpautop' ); ?>
И с помощью редактора ACF WYSIWYG / TinyMCE
<?php remove_filter ( 'acf_the_content', 'wpautop' ); ?>
Комментарии:
1. возможно ли удалить поле ACF?