Отправка электронной почты в WordPress с помощью функции wp_mail(): параметры, примеры, безопасность
Быстрая навигация по записи

Описание функции wp_mail()

Функция wp_mail() используется для отправки электронной почты из WordPress. Она обеспечивает удобный интерфейс для отправки писем, включая возможность добавления заголовков и файлов вложений.

Функция часто применяется в плагинах и темах для уведомлений, восстановления пароля и других уведомлений пользователю.

Параметры

$to

Тип: string|array

Обязательный: Да

Описание: Адрес(а) получателя(ей) письма

Возможные значения:

$subject

Тип: string

Обязательный: Да

Описание: Тема письма

Возможные значения:

$message

Тип: string

Обязательный: Да

Описание: Содержимое письма

Возможные значения:

$headers

Тип: string|array

Обязательный: Нет

Описание: Дополнительные заголовки для письма

Возможные значения:

$attachments

Тип: array

Обязательный: Нет

По умолчанию: array()

Описание: Массив файлов для вложений

Возможные значения:

Возвращаемое значение

Тип: bool

Описание: Возвращает true при успешной отправке письма, false в противном случае

Возможные значения:

• true — письмо успешно отправлено

• false — ошибка при отправке

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

Простой пример отправки письма

				
					$sent = wp_mail('user@example.com', 'Тема письма', 'Содержимое письма');
// Проверяем, было ли письмо отправлено
if ($sent) {
    echo 'Письмо отправлено!';
} else {
    echo 'Ошибка при отправке письма.';
}
				
			

Проверка успешности отправки

Отправка HTML письма с заголовками

				
					$headers = array('From: My Site <noreply@example.com>', 'Content-Type: text/html; charset=UTF-8');
$sent = wp_mail('user@example.com', 'HTML письмо', '<strong>Это HTML письмо</strong>', $headers);
				
			

Использование HTML в сообщении

Логирование ошибки при отправке

				
					$sent = wp_mail('user@example.com', 'Тема', 'Текст сообщения');
if (!$sent) {
    error_log('Ошибка отправки письма.');
}
				
			

Использование error_log для отладки

Отправка письма при определенном действии плагина

				
					function my_plugin_send_email() {
    $to = 'user@example.com';
    $subject = 'Уведомление от плагина';
    $message = 'Спасибо за использование нашего плагина!';
    wp_mail($to, $subject, $message);
}
add_action('my_plugin_action', 'my_plugin_send_email');
				
			

Привязка к хуку

Безопасность

Валидация входных данных: Функция проверяет корректность email-адресов

Санитизация: Некоторые параметры автоматически очищаются

Рекомендации: Используйте esc_html() для вывода email-адресов и других данных

— Связанные функции

Отправляет письмо через sendmail

Устанавливает тип контента для отправляемого письма

— Хуки

Фильтрует адрес отправителя

Фильтрует имя отправителя

Фильтрует тип контента письма

— Примечания

– Ограничения

Некоторые хостинги могут блокировать отправку писем

– Частые проблемы

  • Письма могут попадать в спам
  • Неверные настройки SMTP могут привести к ошибкам

Оставить комментарий

Нужна помощь с WordPress WooCommerce плагинами темой оптимизацией ?

Упрощаем сложное, создаем впечатляющее!
100% без риска
Нет обязательств по найму
Бесплатная оценка
5900 ₽
Современный дизайн
Шаблон сайта продажи цветов или цветочных композиций. Этот шаблон помогает создать стильный и удобный ресурс, где пользователи могут легко заказать цветы с доставкой для любого повода.

Поможем вывести Ваш бизнес на новый уровень!

Проснувшись однажды утром после беспокойного сна, Грегор Замза обнаружил

Добро пожаловать!

Авторизуйтесь, чтобы продолжить

или

Забыли пароль? Восстановить

* Если аккунта у Вас еще нет, то он будет создан автоматически

Давайте составим техническое задание!
100% без риска
Нет обязательств по найму
Бесплатная оценка стоимости
Здравствуйте! Я асистент на основе искусственного интеллекта. Вы можете общаться со мной, как с человеком — задавайте вопросы, описывайте свои идеи и требования.

С удовольствием помогу вам составить техническое задание для вашего WordPress проекта. Если Вам нужна техническая поддержка по купленному у нас плагину или шаблону, то создайте тикет в личном кабинете.

Выберите подходящий вариант или опишите свою задачу в свободной форме, и я помогу вам составить четкий план действий, для оценки стоимости нашими разработчиками! 😊