
📧 Jak zainstalować i skonfigurować SMTP w WordPress: poradnik krok po kroku
Czy e-maile z witryny nie docierają do użytkowników? Adresaci skarżą się, że powiadomienia o zamówieniu lub odzyskiwaniu hasła trafiły do spamu? Z tym problemem spotyka się niemal każdy właściciel witryny WordPress w pierwszych miesiącach po uruchomieniu.
Przyczyną jest domyślny sposób wysyłania wiadomości. WordPress korzysta z wbudowanej funkcji mail() języka PHP, a większość dostawców hostingu nie konfiguruje jej prawidłowo. E-maile wychodzą z nieprawidłowymi nagłówkami, bez podpisu DKIM, a serwisy pocztowe takie jak Gmail czy Mail.ru przenoszą je po prostu do folderu „Spam". Co gorsza, część wiadomości po prostu ginie, a Państwo nawet się o tym nie dowiadują.
Właściwym rozwiązaniem jest SMTP. Konfiguruje się raz, a e-maile z witryny zaczynają docierać stabilnie. Przedstawiam dwa sposoby: prosty (przez wtyczkę) i ręczny (przez kod), aby mogli Państwo wybrać odpowiedni do swojej sytuacji.
💡 Szybki przegląd:
- Dowiedzą się Państwo, dlaczego poczta PHP w WordPress jest zawodna i jak SMTP rozwiązuje problem dostarczalności
- Skonfigurują Państwo wysyłkę przez wtyczkę Easy WP SMTP w 5 minut, bez edytowania kodu
- Opanują Państwo metodę ręczną przez wp-config.php dla tych, którzy wolą obyć się bez dodatkowych wtyczek
- Sprawdzą Państwo działanie SMTP testowym e-mailem i dowiedzą się, na co zwrócić uwagę przy wyborze dostawcy poczty
Czym jest SMTP i dlaczego Państwa witryna traci e-maile
SMTP to skrót od Simple Mail Transfer Protocol. Mówiąc najprościej, jest to dedykowany protokół do wysyłania poczty elektronicznej, który działa inaczej niż mail() PHP.
Gdy WordPress wysyła e-mail przez standardową funkcję, po prostu „zrzuca" go do systemu operacyjnego serwera. Dalej, zależnie od szczęścia: wiadomość może wyjść z hosta bez rekordu SPF, bez DKIM, z cudzym adresem From. Serwis pocztowy odbiorcy widzi podejrzaną wiadomość i wysyła ją do spamu. Albo po prostu odrzuca, a Państwo nie otrzymują żadnego powiadomienia o błędzie.
Serwer SMTP natomiast nawiązuje bezpośrednie połączenie z serwisem pocztowym adresata. Autoryzuje się, przekazuje podpis DKIM Państwa domeny i gwarantuje, że nagłówki wiadomości są poprawne. Rezultat: Państwa e-maile trafiają do „Odebranych", a nie do spamu.
Dodatkowy plus to logowanie. Większość wtyczek SMTP dla WordPress prowadzi dziennik wysłanych wiadomości: widzą Państwo, co poszło, do kogo i kiedy. Jeśli e-mail nie został dostarczony, wiedzą Państwo o tym od razu, a nie po tygodniu od klienta.
Sposób 1: Instalacja SMTP przez wtyczkę Easy WP SMTP
Najprostszy i najbardziej niezawodny sposób dla zdecydowanej większości witryn to zainstalowanie wtyczki. Polecam Easy WP SMTP: ponad pół miliona aktywnych instalacji na WordPress.org, ocena 4,6 na 5 i stabilne aktualizacje. Wtyczka jest bezpłatna i obsługuje nie tylko dowolny zewnętrzny serwer SMTP, ale także bezpośrednie integracje z Gmail, Outlook, Brevo, SendGrid, Mailgun i SendLayer, można połączyć się przez API bez podawania portów i szyfrowania.

Krok 1. Proszę zainstalować wtyczkę. Proszę wejść do panelu administracyjnego WordPress: Wtyczki → Dodaj nową. W pasku wyszukiwania proszę wpisać „Easy WP SMTP". Proszę kliknąć „Zainstaluj", a następnie „Aktywuj".
Krok 2. Proszę przejść do ustawień. W bocznym menu panelu administracyjnego pojawi się pozycja Easy WP SMTP. Proszę ją otworzyć, trafią Państwo na zakładkę „Ogólne" (General).
Krok 3. Proszę wypełnić dane serwera SMTP. Oto co należy wprowadzić:

From Email Address, adres, z którego będą wychodzić e-maile. Proszę użyć tego samego adresu e-mail, który jest podany w ustawieniach WordPress (sekcja Ustawienia → Ogólne). Większość hosterów blokuje wysyłanie z cudzych adresów, prościej nie ryzykować.
From Name, nazwa nadawcy, którą zobaczą odbiorcy. Zazwyczaj jest to nazwa witryny, na przykład „SiteName Support".
Mailer, proszę wybrać „Other SMTP", jeśli podłączają Państwo skrzynkę pocztową swojej domeny lub hostingu. Jeśli korzystają Państwo z Gmail / Outlook / Brevo / SendGrid, proszę wybrać odpowiednią pozycję, wtyczka przeprowadzi Państwa przez autoryzację OAuth bez ręcznego wprowadzania parametrów.

Dla opcji „Other SMTP" proszę wypełnić:
SMTP Host, adres Państwa serwera pocztowego. Dla hostingu jest to zazwyczaj
mail.ваш-домен.com. Dla zewnętrznych serwisów dostawca podaje hosta przy tworzeniu skrzynki.Encryption, proszę wybrać
SSL(port 465) lubTLS(port 587). Współczesne serwery preferują TLS na porcie 587, ale proszę to potwierdzić u swojego dostawcy poczty.SMTP Port, 465 dla SSL, 587 dla TLS. To wartości standardowe, ale hoster może używać niestandardowego portu, proszę sprawdzić w jego dokumentacji.
Authentication, proszę włączyć przełącznik „Yes". Bez uwierzytelnienia SMTP nie będzie działać.
SMTP Username i SMTP Password, login i hasło do Państwa skrzynki pocztowej. Zazwyczaj login jest tożsamy z pełnym adresem e-mail.
Krok 4. Proszę wysłać testowego e-maila. Proszę przewinąć stronę do sekcji „Test Email". W polu „Send To" proszę wpisać adres, do którego mają Państwo dostęp (może być własny). Pola „Subject" i „Message" proszę wypełnić dowolnie, na przykład „SMTP Test" i „Sprawdzenie wysyłki". Proszę kliknąć „Send Test Email".
Jeśli wszystko jest skonfigurowane poprawnie, na górze ekranu pojawi się zielone powiadomienie o pomyślnym wysłaniu. E-mail przyjdzie na wskazany adres w ciągu kilku sekund. Jeśli nie przyszedł, proszę sprawdzić folder „Spam"; jeśli i tam go nie ma, proszę jeszcze raz sprawdzić parametry hosta, portu i hasła.
Krok 5. Proszę włączyć logowanie. W podmenu Easy WP SMTP proszę otworzyć zakładkę „Email Log" i aktywować zapisywanie logów. Teraz każdy wysłany e-mail będzie zapisywany w dzienniku z datą, odbiorcą i statusem. Jeśli za miesiąc klient powie „nie otrzymałem e-maila z kodem", otworzą Państwo log i zobaczą: e-mail poszedł i został dostarczony, problem leży po stronie klienta.
Sposób 2: Ręczna konfiguracja SMTP przez wp-config.php
Ta metoda jest dla tych, którzy zasadniczo nie chcą instalować wtyczki dla jednej funkcji. Minus jest oczywisty: nie będzie żadnego interfejsu, logowania i testowania z panelu administracyjnego. Wszystkie zmiany tylko przez edycję plików.
Ważne: przed edycją wp-config.php koniecznie proszę zrobić kopię zapasową witryny. Błąd w tym pliku spowoduje „biały ekran śmierci", a przywrócenie dostępu będzie możliwe tylko przez FTP lub menedżera plików hostingu.
Krok 1: Proszę dodać stałe SMTP w wp-config.php
Proszę połączyć się z serwerem przez FTP lub przez menedżera plików hostingu. Proszę znaleźć plik wp-config.php w katalogu głównym witryny i dodać następujący kod PRZED linią /* That's all, stop editing! Happy publishing. */:
1 // SMTP-конфигурация для отправки почты WordPress 2 define( 'SMTP_HOST', 'mail.ваш-домен.com' ); // Адрес SMTP-сервера 3 define( 'SMTP_AUTH', true ); // Включить аутентификацию 4 define( 'SMTP_PORT', '587' ); // Порт: 587 (TLS) или 465 (SSL) 5 define( 'SMTP_SECURE', 'tls' ); // Шифрование: tls или ssl 6 define( 'SMTP_USERNAME', 'user@ваш-домен.com' ); // Логин почтового ящика 7 define( 'SMTP_PASSWORD', 'ваш-пароль' ); // Пароль 8 define( 'SMTP_FROM', 'user@ваш-домен.com' ); // Адрес отправителя 9 define( 'SMTP_FROMNAME', 'SiteName Support' ); // Имя отправителя
Proszę zastąpić dane własnymi: host, port, login, hasło. Jeśli dostawca poczty używa SSL na porcie 465, proszę zmienić SMTP_PORT na '465', a SMTP_SECURE na 'ssl'.
Krok 2: Proszę podłączyć stałe do PHPMailer
Same stałe w wp-config.php nic nie robią, WordPress nie wie, co z nimi zrobić. Należy przekazać je do obiektu PHPMailer przez hook phpmailer_init. Proszę dodać ten kod do pliku functions.php swojego motywu potomnego lub przez wtyczkę Code Snippets (polecam, nie zginie przy aktualizacji motywu):
1 /** 2 * Настройка SMTP через константы из wp-config.php 3 */ 4 add_action( 'phpmailer_init', 'sdstudio_smtp_configure' ); 5 function sdstudio_smtp_configure( $phpmailer ) { 6 $phpmailer->isSMTP(); 7 $phpmailer->Host = SMTP_HOST; 8 $phpmailer->SMTPAuth = SMTP_AUTH; 9 $phpmailer->Port = SMTP_PORT; 10 $phpmailer->SMTPSecure = SMTP_SECURE; 11 $phpmailer->Username = SMTP_USERNAME; 12 $phpmailer->Password = SMTP_PASSWORD; 13 $phpmailer->From = SMTP_FROM; 14 $phpmailer->FromName = SMTP_FROMNAME; 15 }
Co tu się dzieje: WordPress wywołuje hook phpmailer_init przed każdym wysłaniem e-maila i przekazuje do niego instancję klasy PHPMailer. Funkcja sdstudio_smtp_configure konfiguruje ten obiekt wartościami ze stałych i e-mail idzie przez SMTP, a nie przez mail() PHP.
Jeśli korzystają Państwo ze skrzynki pocztowej na swojej domenie (na przykład admin@ваш-сайт.com, utworzonej w cPanel hostingu), dane do hosta SMTP proszę pobrać z panelu sterowania hostingiem. Zazwyczaj jest tam sekcja „Połączenie z pocztą" lub „Email Accounts", gdzie dla każdej skrzynki podane są host, port i ustawienia szyfrowania.
Krok 3: Proszę sprawdzić wysyłanie
Najprostszy sposób sprawdzenia to zainicjowanie wysłania systemowego e-maila WordPress. Na przykład proszę zażądać resetowania hasła przez formularz logowania (/wp-login.php → „Nie pamiętasz hasła?"). Jeśli e-mail przyszedł, SMTP działa.
Jeśli chcą Państwo dokładniejszy test, proszę tymczasowo dodać ten kod w functions.php (po sprawdzeniu proszę usunąć):
1 add_action( 'init', function() { 2 wp_mail( '[email protected]', 'SMTP Test', 'Сообщение отправлено через SMTP!' ); 3 } );
Proszę odświeżyć dowolną stronę witryny, na Państwa adres zostanie wysłany testowy e-mail. Proszę nie zapomnieć usunąć kodu po sprawdzeniu, w przeciwnym razie e-mail będzie wysyłany przy każdym odświeżeniu strony.
Sposób 3: Alternatywne wtyczki SMTP
Easy WP SMTP nie jest jedyną opcją. Jeśli z jakiegoś powodu nie pasuje, oto trzy sprawdzone bezpłatne wtyczki z aktywną bazą instalacji od 200 000 witryn:
WP Mail SMTP, najpopularniejsza wtyczka SMTP w repozytorium WordPress (3 mln+ instalacji). Darmowa wersja podłącza dowolny serwer SMTP. Płatna dodaje integracje z SendLayer, Amazon SES, Microsoft 365 i Zoho Mail, a także szczegółowe logi i raporty o błędach.
Post SMTP, całkowicie darmowa, z otwartym kodem źródłowym. Potrafi wysyłać e-maile przez SMTP, Gmail API, Microsoft 365 API, SendGrid, Mailgun, Brevo. Wbudowany Email Log z filtrowaniem i ponownym wysyłaniem. Dobry wybór, jeśli potrzebne jest maksimum możliwości bez opłat.
FluentSMTP, minimalistyczna i szybka wtyczka od twórców FluentCRM. Obsługuje Amazon SES, Mailgun, SendGrid, SparkPost, Elastic Email i dowolny serwer SMTP. Interfejs jest prostszy niż u konkurencji, a wtyczka praktycznie nie obciąża panelu administracyjnego.
Wszystkie trzy opcje mają ocenę 4,5+ i są regularnie aktualizowane. Zasada konfiguracji wszędzie jest taka sama: instalują Państwo wtyczkę → wprowadzają dane serwera pocztowego → wysyłają testowego e-maila → włączają logowanie.
W przeciwieństwie do metody ręcznej przez wp-config.php, każda z tych wtyczek daje co najmniej dziennik wysłanych e-maili i możliwość przetestowania połączenia z panelu administracyjnego. Dla witryny, która wysyła więcej niż kilka e-maili tygodniowo, funkcje te szybko stają się koniecznością, a nie tylko wygodą.
Testowanie SMTP: jak upewnić się, że wszystko działa
Skonfigurowali Państwo wtyczkę lub kod, proszę sprawdzić rezultat. Oto checklista z trzech punktów, która zamyka wszystkie możliwe problemy:
1. Testowy e-mail z wtyczki. Jeśli korzystali Państwo z Easy WP SMTP, proszę wysłać test przez wbudowaną funkcję (zakładka „Test Email"). E-mail poszedł i przyszedł do „Odebranych", świetnie. Przyszedł do „Spamu", proszę sprawdzić, czy w „From Email Address" podany jest rzeczywisty adres w Państwa domenie (nie @gmail.com, jeśli witryna jest na ваш-домен.com).
2. Sprawdzenie nagłówków e-maila. Proszę otworzyć otrzymany testowy e-mail i zobaczyć „oryginał" / „kod źródłowy" wiadomości (w Gmail: trzy kropki → „Pokaż oryginał"). Proszę znaleźć linie SPF, DKIM i DMARC. Przynajmniej SPF: PASS musi być. Jeśli wszystkie trzy pokazują PASS, Państwa dostarczalność jest maksymalna.
3. Sprawdzenie przez formularz na witrynie. Proszę przejść scenariusz użytkownika: wypełnić formularz kontaktowy, zażądać resetowania hasła, złożyć testowe zamówienie w WooCommerce. Każda z tych czynności powinna wygenerować e-mail, proszę upewnić się, że wszystkie przychodzą. Jeśli jakiś e-mail nie poszedł, najprawdopodobniej konkretna wtyczka (Forms / WooCommerce) używa własnego sposobu wysyłania z pominięciem ogólnego SMTP. To rzadkość, ale proszę sprawdzić ustawienia takiej wtyczki, zazwyczaj jest tam opcja „Use WordPress mail" lub wybór dostawcy poczty.
Jeśli wolą Państwo format wideo, w tym tutorialu pokazano pełną konfigurację SMTP przez wtyczkę WP Mail SMTP od zera do pierwszego wysłanego e-maila. Zasada jest taka sama dla każdej z omówionych wtyczek.
⁉️🤔 Często zadawane pytania
Dlaczego e-maile z mojej witryny wychodzą, ale trafiają do spamu?
Główna przyczyna to brak rekordów DKIM i SPF w domenie. Funkcja PHP
mail()nie podpisuje e-maili, a serwisy pocztowe widzą „anonimową" wysyłkę. Wtyczka SMTP wysyła e-maile w imieniu Państwa serwera pocztowego, który ma te rekordy już skonfigurowane. Większość hostingów dodaje podstawowy rekord SPF automatycznie przez cPanel, DKIM i DMARC konfiguruje się ręcznie w panelu DNS w 10 minut.
Jaki port SMTP wybrać: 465 czy 587?
Port 587 z szyfrowaniem TLS to współczesny standard IETF. Port 465 z SSL jest przestarzały, ale szeroko wspierany. Jeśli dostawca akceptuje oba, proszę wybrać 587/TLS. Jeśli nie działa, proszę spróbować 465/SSL. W praktyce większość hostingów współdzielonych w 2026 roku działa z oboma portami, VPS częściej wymagają 587/TLS. Błąd połączenia po konfiguracji, w pierwszej kolejności proszę przełączyć port i szyfrowanie.
Czy można używać bezpłatnego Gmaila do wysyłania e-maili z witryny?
Tak, ale z ograniczeniem: 500 e-maili dziennie dla kont osobistych i do 2 000 dla Google Workspace. Dla sklepów i witryn członkowskich bardziej niezawodne są serwisy transakcyjne: Brevo (300 e-maili/dzień za darmo), SendGrid (100/dzień), Mailgun lub Amazon SES. Podłączyć Gmaila najprościej przez Easy WP SMTP: wybierają Państwo mailer „Gmail" i przechodzą autoryzację OAuth w parę kliknięć.
Czy potrzebna jest wtyczka SMTP, jeśli hosting już skonfigurował pocztę?
Serwer pocztowy hostingu i wysyłanie z WordPress to dwa różne ogniwa. Hosting odbiera pocztę dla domeny, ale WordPress nadal wysyła przez
mail()PHP bez autoryzacji. Rezultat jest ten sam: spam lub utrata e-maili. Wtyczka SMTP zmusza WordPress do prawidłowego korzystania z serwera pocztowego. Prosty test: proszę otworzyć „oryginał" e-maila z witryny i znaleźćX-Mailer. Jeśli jest tamPHPMailerbez SMTP, wtyczka jest niezbędna.
Wtyczka pokazuje błąd „SMTP Error: Could not authenticate", co robić?
Trzy częste przyczyny. Pierwsza: hasło zawiera znaki specjalne (krzyżyk, dolar, ampersand), które wtyczka nieprawidłowo eskapuje, proszę zmienić na alfanumeryczne. Druga: hosting wymaga innego portu, proszę przełączyć 587↔465 i TLS↔SSL. Trzecia: dostawca blokuje wychodzący ruch SMTP na taryfie ogólnej, proszę to wyjaśnić z pomocą techniczną. Jeśli nic nie pomaga, proszę przełączyć się na integrację API: na przykład Gmail API przez OAuth jest bardziej niezawodny niż uwierzytelnianie hasłem.
Który sposób konfiguracji SMTP wybrać dla swojej witryny
Odpowiedź zależy od trzech czynników: wolumenu e-maili, komfortu technicznego i budżetu.
Jeśli witryna wysyła do 100 e-maili dziennie, proszę zainstalować Easy WP SMTP, podłączyć dowolną skrzynkę pocztową i zamknąć temat w 5 minut. Darmowy plan Brevo przez integrację API tej samej wtyczki daje 300 e-maili dziennie całkowicie bez konfiguracji portów SMTP, po prostu rejestrują się Państwo, otrzymują klucz API, wklejają do wtyczki, gotowe.
Jeśli witryna to sklep na WooCommerce z 500+ zamówieniami miesięcznie, proszę podłączyć serwis transakcyjny: Mailgun, SendGrid lub Amazon SES. Są one przystosowane do masowej wysyłki e-maili transakcyjnych i dają szczegółową analitykę dla każdego e-maila (dostarczono / otwarto / kliknięto). Easy WP SMTP obsługuje wszystkie trzy przez API bez kłopotu z portami.
Jeśli jest Pan/Pani deweloperem i nie chce dodatkowych wtyczek, metoda ręczna przez wp-config.php działa, ale proszę pamiętać: bez logowania jest Pan/Pani ślepy. Proszę dodać przynajmniej prosty plik logu przez hook wp_mail_failed lub zainstalować FluentSMTP, jest on praktycznie niewyczuwalny i daje pełnowartościowy dziennik e-maili.
Najważniejsze, proszę nie zostawiać WordPress na standardowej poczcie PHP. Pięć minut na instalację wtyczki SMTP uchroni Państwa przed utraconymi zamówieniami, przeoczonymi zgłoszeniami do pomocy technicznej i problemami reputacyjnymi z domeną, którą serwisy pocztowe oznaczyły jako źródło spamu.



