2016-09-08 3 views
1

Я использую плагин, который был создан для уникального сайта регистрации. На панели инструментов WP есть страница настроек, где администратор может написать письмо с подтверждением регистрации, отправленное пользователям, и на этой странице используется wp-редактор по умолчанию (я думаю, это TinyMCE).Редактор WordPress, игнорирующий разрывы строк

Я подтвердил это, потому что setting.p плагиной имеет следующий цикл

<?php 
    wp_editor($content, $editor_id); 
?> 

Проблема состоит в том, что в то время как редактор штрафа на почтах и ​​странице работает, когда электронная почта отправляются от настройки страницы моего плагина в том, что использует тот же редактор, он поставляется без разрывов строк.

Я попытался с помощью редактора в текстовом режиме, чтобы создать разрыв строки с <br /><p></p> и <div></div>, но они не работают либо и после сохранения изменений, HTML-теги переводятся в форматированный текст <br /> то есть превращается в &lt;br &gt;.

Это то, что моя функция отправки почты выглядит в плагине:

function SendMails($Data){ 
$To   = $Data['To']; 
$Subject  = $Data['Subject']; 
$Sender  = $Data['SenderName']; 
$From  = '[email protected]'.$_SERVER['SERVER_NAME']; 
$Body  = $Data['Body']; 
$Attachments = $Data['Attachments']; 

$recipients = array($To); 
$headers[] = "From: $Sender <$From>" . "\r\n"; 
$headers[] = "Content-Type: text/html"; 
$subj = $Subject; 
$SendMail = wp_mail($recipients, $subj, $Body, $headers, $Attachments); 
return $SendMail; 
} 

P.S. Все остальные электронные письма WP поставляются правильно с разрывами строк.

Любая идея, что может быть проблемой и/или как ее исправить?

+0

Try для обработки содержимого редактора с помощью функции nl2br(), прежде чем отправить его в сообщении электронной почты. – ArturoO

+0

Я отредактировал мой вопрос, чтобы включить функцию sendmails. Как обработать содержимое редактора через nl2br()? – user1724434

ответ

2

использовать этот код, чтобы преобразовать разрывы в

$Body = preg_replace("/\r\n|\r|\n/",'<br/>',$Data['Body']); 
+0

Это сделало, спасибо огромное :) – user1724434

Смежные вопросы