Всем советы и приветы!
В соседней теме мы уже узнали как решить данную задачу полностью, а теперь самое время понять как это реализовать частично!
А именно, вы хотите, чтобы в середине записи при добавлении материала Вордпресс отключились теги p и br.
Для этого необходимо открыть файл functions.php, он находиться в папке с вашей темой сайта и вверху после <?php прописать следующий код:
/** Частичное отключение автоформатирование p и br
-------------------------------------------------------- **/
function wpschool_formatter( $content ) {
$new_content = '';
$pattern_full = '{(\[raw\].*?\[/raw\])}is';
$pattern_contents = '{\[raw\](.*?)\[/raw\]}is';
$pieces = preg_split( $pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE );
foreach ( $pieces as $piece ) {
if ( preg_match( $pattern_contents, $piece, $matches ) ) {
$new_content .= $matches[1];
} else {
$new_content .= wptexturize( wpautop( $piece ) );
}
}
return $new_content;
}
remove_filter( 'the_content', 'wpautop' );
remove_filter( 'the_content', 'wptexturize' );
add_filter( 'the_content', 'wpschool_formatter', 99 );
А когда будете добавлять на сайт новую запись, используйте шорткод raw
Например:
[raw]Привет я текст без автоформатирования![/raw]
Как включить шорткоды на WordPress?
Иногда бывает так, что шорткоды могут не работать на вашем сайте и выше предложенное решение не будет работать!
И для решения данной проблемы следует в тот же файл functions.php прописать следующий код:
/** Включаем шорткоды
-------------------------------------------------------- **/
add_filter('widget_text', 'do_shortcode');
На этом у меня всё! Удачных решений!
А Вы оставите комментарий первым?