Описание phpmailer_init
— Action
Хук phpmailer_init позволяет изменять параметры PHPMailer перед отправкой письма. Он срабатывает каждый раз, когда WordPress инициализирует объект PHPMailer, что происходит во время отправки писем через функцию wp_mail
Примеры использования
Пример настройки SMTP для отправки писем:
add_action('phpmailer_init', function($phpmailer) {
$phpmailer->isSMTP();
$phpmailer->Host = 'smtp.example.com';
$phpmailer->Username = 'user@example.com';
$phpmailer->Password = 'password';
$phpmailer->Port = 587;
$phpmailer->SMTPSecure = 'tls';
});
В этом примере мы настраиваем PHPMailer для использования SMTP с указанным хостом, пользователем и паролем
Пример добавления заголовков к письму:
add_action('phpmailer_init', function($phpmailer) {
$phpmailer->addAddress('recipient@example.com');
$phpmailer->Subject = 'Тема письма';
$phpmailer->Body = 'Содержимое письма';
});
Здесь мы добавляем адрес получателя, тему и тело письма
Пример изменения отправителя:
add_action('phpmailer_init', function($phpmailer) {
$phpmailer->setFrom('sender@example.com', 'Имя отправителя');
});
В этом примере мы задаем адрес и имя отправителя для письма
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить параметры отправки писем, например, для настройки SMTP или изменения заголовков
– Производительность
Хук не должен значительно влиять на производительность, так как изменения касаются только настройки PHPMailer
– Предупреждения
Убедитесь, что вы правильно указываете параметры SMTP, чтобы избежать проблем с отправкой писем
Альтернативы
Тип: function
Функция wp_mail позволяет отправлять электронные письма, но не предоставляет такой же гибкости в настройках, как хук phpmailer_init
Используйте wp_mail, если вам не нужно изменять параметры PHPMailer и достаточно стандартной отправки писем