Administrator serwisu takiego jak CMS WordPress, musi sprostać wielu problemom podczas jego obsługi. Akurat w tej branży, zmiennych które mogą nie działać, jest naprawdę sporo. Bez względu na to, czy zarządzasz prostą stroną WordPress, czy rozbudowanym sklepem WooCommerce, kluczowa jest funkcja efektywnego wysyłania e-maili. Jednak podstawowe pakiety hostingowe, posiadają jednak pewne ograniczenia w tej kwestii.

W przeszłości już stworzyliśmy kilka poradników, jak reagować w różnych sytuacjach. W podstawowym założeniu, WordPress opiera wysyłkę w korelacji z serwerem na którym się znajduje, wykorzystując dostepną funkcję mail(). Jednak ta opcja, zarezerwowana jest raczej jedynie do sporadycznego wysyłania powiadomień.

Czym jest funkcja mail()?

Funkcja mail() w PHP to wbudowana funkcja, która umożliwia wysyłanie e-maili bezpośrednio z serwera. Mimo że funkcja mail() jest łatwa w użyciu, ma pewne ograniczenia:

  • Wymaga poprawnej konfiguracji serwera pocztowego na serwerze PHP, co może być problematyczne na niektórych serwerach.
  • Nie obsługuje uwierzytelniania SMTP, co może skutkować tym, że wysyłane wiadomości będą trafiać do folderów ze spamem.
  • Nie obsługuje zaawansowanych funkcji poczty e-mail, takich jak HTML w treści e-maili, załączniki, czy zaawansowane formatowanie.

Z tych powodów, wiele aplikacji internetowych korzysta z protokołu SMTP poczty e-mail od zewnętrznych dostawców.

Czym jest protokół SMTP?

SMTP, czyli Simple Mail Transfer Protocol (tłumacząc na nasz język: Prosty Protokół Przesyłania Poczty), to zalecany protokół internetowy używany do przesyłania e-maili z naszej strony internetowej. Używanie zewnętrznego SMTP zamiast wbudowanej funkcji mail() w PHP ma ogromną zaletę kontekście niezawodności, bezpieczeństwa i elastyczności wysyłania e-maili. Co jest kluczowe podczas posiadania sklepu internetowego, gdzie powiadomienia transakcyjne są kluczowe.

Co możemy zyskać wykorzystując zewnętrzne SMTP?

Niezawodność dostarczania e-maili jest obowiązkowe i najczęstszym powodem korzystania z zewnętrznych serwerów SMTP. Zewnętrze firmy posiadają odpowiednie przygotowane środowisko z wymaganymi certyfikatami, co znacznie zmniejsza ryzyko, że wysłane e-maile zostaną sklasyfikowane jako spam i trafią do nieodpowiedniego folderu u odbiorców.

Kolejnym ważnym aspektem jest uwierzytelnianie i bezpieczeństwo. Zewnętrzne serwery SMTP wymagają uwierzytelnienia, co stanowi barierę ochronną przed różnymi nadużyciami, w tym przed wysyłaniem niechcianego spamu. Dodatkowo, te serwery często wspierają bezpieczne połączenia, takie jak SSL/TLS, co jest kluczowe dla ochrony przesyłanych danych i zapewnienia prywatności komunikacji.

Skalowalność jest kolejną ważną cechą zewnętrznych serwerów SMTP. Dla stron internetowych o dużym ruchu lub dla tych, które wysyłają dużą liczbę e-maili, zewnętrzne serwery SMTP oferują lepszą wydajność i możliwość dostosowania do rosnących potrzeb. Otrzymujemy również wspieranie techniczne, które w przypadku awarii może być nieocenione.

WordPress i SMTP – jak?

Mając teorie za sobą, przechodzimy do konkretów wdrażając usługę wysyłki e-mail poprzez serwer zewnętrzny. Do tego wykorzystamy dwie rzeczy:

  • Moduł „Mailjet for WordPress”
  • Dostawca usług pocztowych Mailjet

Oczywiście dostawcą SMTP nie musi koniecznie być Mailjet, jednak według mnie nawet w wersji darmowej oferuje więcej niż limity na API Google Workspace.

Także w pierwszej kolejności należy założyć darmowe konto w kilku krokach:

Następnie potwierdzamy darmowy plan:

W następnym kroku należy potwierdzić aktywacje konta, w otrzymanej wiadomości pod podanym wcześniej adresem e-mail. Po wszystkim zostaniem przeniesieni do panelu administracyjnego i można zacząć czarowanie. Interesuje nas zakładka API:

Wybieramy w niej „Generate Secret Key” i kopiujemy do notatnika otrzymane kody. Następnie przechodzimy do naszego panelu administracyjnego WordPress’a, gdzie instalujemy moduł „Mailjet Email Marketing”. Moglibyśmy zainstalować inny moduł umożliwiający wysyłkę wiadomości poprzez SMTP, wtedy potrzebowaliśmy jeszcze kodami, adres serwera: in-v3.mailjet.com

Jednak korzystając z dedykowanego modułu, konfiguracja będzie dużo prostsza.

Także po zainstalowaniu modułu, przechodzimy do podania wcześniej skopiowanych kluczy w odpowiednie pola:

Pomijamy krok tworzenia list pod wysyłkę newsletter’ów:

I wybieramy opcję „Configure WordPress email sending”:

Tu wybieramy „Enable sending emails through Mailjet”, podajemy nazwę jaką chcemy wyświetlać w wiadomościach, wybieramy port 465 i zapisujemy ustawienia. Na końcu możemy przetestować ustawienia.

Powinniśmy otrzymać wiadomość email, naszą testową. Warto podejrzeć sobie konfiguracje otrzymanej wiadomości, aby potwierdzić czy na pewno wysyłamy poprzez serwery Mailjet’u:

Podsumowanie

Na koniec podsumowując, ograniczenia hostingu mogą stanowić problem dla witryn o dużym ruchu, zwłaszcza gdy chodzi o limit wysyłanych e-maili za pomocą funkcji mail(). Zewnętrzne serwery SMTP oferują rozwiązanie tego problemu, umożliwiając wysyłanie większej liczby wiadomości bez obawy o przekroczenie limitów narzuconych przez dostawców usług hostingowych.

Jeżeli macie inne pytania odnośnie tworzenia stron internetowychadministracji stron internetowych lub pozycjonowaniem stron śmiało piszcie do nas.

Mateusz Adamski

Mateusz Adamski

Frontend Developer, Specjalista SEO. Od 2009 roku zajmuję się pozycjonowaniem oraz optymalizacją stron internetowych. Od 2012 roku specjalizuję się w tworzeniu stron i sklepów internetowych opartych na systemach CMS WordPress oraz Prestashop. Posiadam dobrą znajomość HTML5, CSS3, Bootstrap. Dysponuję również dużym doświadczeniem z programami Adobe Photoshop, Dreamweaver oraz CorelDRAW. Prywatnie jestem dużym fanem fotografii oraz motoryzacji. Od 2013 roku udzielam się jako klubowicz oraz moderator ogólnopolskiego klubu motoryzacyjnego. Masz jakieś pytania? Napisz do nas.