Для настройки отправки почты без плагина:

В wp-config.php разместите данные константы перед определением ABSPATH и замените тестовые данные реквизитами своего SMTP сервера (yandex, google или любой другой):

<?php
// Имя пользователя для SMTP авторизации
define( 'SMTP_USER', 'user@example.com' );  
  
// Пароль пользователя для SMTP авторизации
define( 'SMTP_PASS', 'smtp password' );
  
// Хост почтового сервера
define( 'SMTP_HOST', 'smtp.example.com' );
  
// Обратный Email
define( 'SMTP_FROM', 'website@example.com' );
  
// Имя для обратного мыла
define( 'SMTP_NAME', 'Вася Пупкин' );
  
// Номер порта (25, 465, 587)
define( 'SMTP_PORT', '25' );
  
// Тип шифиования (ssl или tls)
define( 'SMTP_SECURE', 'tls' );
  
// Включение/отключение шифрования
define( 'SMTP_AUTH', true );
  
// Режим отладки (0, 1, 2)
define( 'SMTP_DEBUG', 0 );

В functions.php фильтруем стандартные параметры PHPMailer, передавая в него данные из констант, определённых в конфиге:

<?php
use PHPMailer\PHPMailer\PHPMailer;
 
/**
 * Настройка SMTP
 *
 * @param PHPMailer $phpmailer объект мэилера
 */
function mihdan_send_smtp_email( PHPMailer $phpmailer ) {
  $phpmailer->isSMTP();
  $phpmailer->Host       = SMTP_HOST;
  $phpmailer->SMTPAuth   = SMTP_AUTH;
  $phpmailer->Port       = SMTP_PORT;
  $phpmailer->Username   = SMTP_USER;
  $phpmailer->Password   = SMTP_PASS;
  $phpmailer->SMTPSecure = SMTP_SECURE;
  $phpmailer->Sender     = SMTP_FROM;
  $phpmailer->From       = SMTP_FROM;
  $phpmailer->FromName   = SMTP_NAME;
}
add_action( 'phpmailer_init', 'mihdan_send_smtp_email' );

Проверка отправки

В корне сайта создайте файл mail.php со следующим содержимым и откройте его через браузер:

<?php
// Кому отправляем
$to = 'you@yourdomain.com';
   
// Тема письма
$subject = 'Проверка wp_mail';
  
// Само сообщение
$message = 'Это тестовое сообщение';
   
// Загружаем только ядро WordPress
define( 'WP_USE_THEMES', false );
require( 'wp-load.php' );
   
// Отправляем письмо
$sent_message = wp_mail( $to, $subject, $message );
  
if ( $sent_message ) {
    // Если сообщение успешно отправилось
    echo 'Всё чётко настроил, бро!';
} else {
    // Ошибки при отправке
    echo 'Где-то ты лоханулся знатно!';
}

Примеры настроек

Google (Gmail, G-Suite)

define( 'SMTP_AUTH', true );
define( 'SMTP_USER', 'ваше_имя@gmail.com' );  
define( 'SMTP_PASS', 'Ваш пароль от почты' );
define( 'SMTP_HOST', 'smtp.gmail.com' );
define( 'SMTP_FROM', 'ваше_имя@gmail.com' );
define( 'SMTP_NAME', 'Ваше имя' );
define( 'SMTP_PORT', '465' );
define( 'SMTP_SECURE', 'ssl' );

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

Настройка подключения к электронной почте FluentSMTP

Настало время использовать полученные учетные данные SMTP в FluentSMTP и отправлять электронные письма с веб-сайта WordPress.

Добавить новое SMTP-соединение

Если у вас уже есть настроенное соединение, то вы будете в панели управления FluentSMTP.
Пожалуйста, перейдите в Настройки WordPress ⮕ FluentSMTP ⮕ Настройки ⮕ Добавить другое соединение

Если вы еще не настроили SMTP-подключение, вам будет предложено настроить подключение автоматически.
Теперь из панели инструментов WordPress перейдите в Настройки ⮕ FluentSMTP

Подробности SMTP-протокола

После выбора «Другой SMTP» вам потребуется настроить некоторые параметры, включая параметры отправителя и учетные данные аутентификации SMTP .

Настройки отправителя

  1. From Email:
    «From Email» — это адрес электронной почты , который будет использоваться для отправки всех писем WordPress. Установите флажок, чтобы задать обратный путь, соответствующий адресу электронной почты .
    Return Path указывает, куда будут отправляться уведомления о недоставке или сообщения о недоставке. Если флажок не установлен, сообщения о недоставке будут потеряны. Если этот параметр включен, вам будут отправляться электронные письма с использованием «From Email», если какие-либо сообщения будут возвращены из-за проблем с электронной почтой получателя.
  2. From Name:
    From Name может быть любым. Вы можете использовать комбинацию своего имени и названия компании. В приведенном выше примере используется только «Notifications».
    Если вы отметите Force Sender Name, то это имя будет принудительно отображаться в почтовом клиенте получателя. Это также зависит от того, поддерживает ли его ваш поставщик услуг доставки электронной почты.

Настройки SMTP-сервера

Следующая часть — предоставить учетные данные аутентификации SMTP-сервера. Это состоит из 3 частей, которые описаны ниже:

  1. Аутентификация :
    Если вам необходимо предоставить учетные данные вашего SMTP-сервера (имя пользователя и пароль) для включения аутентификации, в нашем случае это требуется для почтовых серверов cPanel.
    • Имя пользователя SMTP : Обычно это адрес электронной почты, который вы используете для отправки писем.
    • Пароль SMTP : Обычно это пароль для учетной записи электронной почты, который вы использовали при создании почтового ящика.
  2. Хранилище ключей доступа:
    • Хранить ключи доступа в БД: По умолчанию это включено и настоятельно рекомендуется. Это сохранит информацию в базах данных в зашифрованном формате.
    • Ключи доступа в файле конфигурации: это позволяет вам хранить ключи доступа в следующем разделе внутри файла wp-config.php с помощью следующих директив.

Просто скопируйте следующий фрагмент и замените звезды на соответствующие учетные данные. Затем просто вставьте его в файл wp-config.php вашей установки WordPress

define( 'FLUENTMAIL_SMTP_USERNAME', '********************' );
define( 'FLUENTMAIL_SMTP_PASSWORD', '********************' );

После того, как вы закончите с предоставлением корректных данных, пожалуйста, сохраните настройки, нажав кнопку Save Connection Settings . Затем следуйте этой документации:Отправьте тестовое электронное письмо , подтверждение тестового электронного письма и подтверждение возможности доставки тестового электронного письма, используя это SMTP-соединение, на свой адрес электронной почты и подтвердите доставку.

Вот и все! Наслаждайтесь надежностью FluentSMTP на вашем WordPress-сайте и никогда больше не сталкивайтесь с проблемами с доставкой электронной почты!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Trending