Dunno2018
@Dunno2018

Wordpress — При отправке формы тема письма отображается в виде символов. Как исправить?

Здравствуйте.
Если отправить форму с сайта, то на почту придет письмо с темой =?UTF-8?B?0JfQsNGP0LLQutCwINGBINGB0LDQudGC0LA=?=, а должен быть текст на русском, который указан в $form_subject

Кот отправки формы:
add_action('wp_ajax_send_email', 'name_send_email');
add_action('wp_ajax_nopriv_send_email', 'name_send_email');
function name_send_email() {
  $method = $_SERVER['REQUEST_METHOD'];

  //Script Foreach
  $c = true;

  if ($method !== 'POST') {
    exit();
  }

  $project_name = "Название сайта";
  $admin_email  = "mymail@ya.ru";
  $form_subject = "Заявка с сайта";

  foreach ( $_POST as $key => $value ) {
    if ( $value != "" && $key != "project_name" && $key != "admin_email" && $key != "form_subject" ) {
      $message .= "
      " . ( ($c = !$c) ? '<tr>':'<tr style="background-color: #f8f8f8;">' ) . "
      <td style='padding: 10px; border: #e9e9e9 1px solid;'><b>$key</b></td>
      <td style='padding: 10px; border: #e9e9e9 1px solid;'>$value</td>
      </tr>
      ";
    }
  }

  $message = "<table style='width: 100%;'>$message</table>";

  function adopt($text) {
  	return '=?UTF-8?B?'.Base64_encode($text).'?=';
  }

  $headers = "MIME-Version: 1.0" . PHP_EOL .
  "Content-Type: text/html; charset=utf-8" . PHP_EOL .
  'From: '.adopt($project_name).' <'.$admin_email.'>' . PHP_EOL .
  'Reply-To: '.$admin_email.'' . PHP_EOL;

  wp_mail($admin_email, adopt($form_subject), $message, $headers );

  wp_die();
}
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 1
@vardoLP
Ват ю сэй эбаут май мама?!
а в этой переменной что $text ?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы