wpautop() — заменяет переносы строк в тексте на HTML-теги

Заменяет все двойные переносы строк в тексте на параграфы, т.е. заключает абзац в теги <p></p>, также при определенных значениях параметров будет заменять оставшиеся одинарные переносы строк на <br />.

"Одинарные" переносы строк (но не двойные), находящиеся в тегах <script></script> или в <style></style> игнорируются.

В WordPress эта функция используется для фильтрации the_content() и the_excerpt().

wpautop( $foo, $br = true );

$foo
(строка) (обязательное) — кусок текста, который необходимо обработать.

$br
(логическое|целое) (необязательное) — если установлено true или 1, то все "одинарные" переносы строк, оставшиеся после замены двойных на <p></p>, будут преобразованы в <br />.

Примеры использования

Простой пример:

$foo = 'текст с двойными
 
и одинарными
переносами строк';
echo wpautop ( $foo );

Вот скриншот того, что получилось из исходного код (Ctrl + U) в Google Chrome:

результат действия функции wpautop

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

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

$headers  = "Content-type: text/html; charset=utf-8 \r\n"; 
$headers .= "From: {$_POST['name']} <{$_POST['email']}>\r\n";
mail(get_option('admin_email'), "Тут тема", wpautop($_POST['message']), $headers);

Для того, чтобы HTML-теги интерпретировались в письмах, а не выводились как текст, Content-type обязательно должен быть text/html.

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал