Arama Yap Mesaj Gönder
Biz Sizi Arayalım
+90
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro
X

Lütfen Ülke (Bölge) Seçiniz

Türkiye (Türkçe)Türkiye (Türkçe) Almanya (German)Almanya (German) Worldwide (English)Worldwide (English)
X

Lütfen Para Birimi Seçiniz

Türk Lirası $ US Dollar Euro

Bize Ulaşın

Konum Halkalı merkez mahallesi fatih cd ozgur apt no 46 , Küçükçekmece , İstanbul , 34303 , TR
WordPress Teknik Rehberi

WordPress Mail Göndermiyor: Şifre Sıfırlama, Form ve SMTP Rehberi

WordPress wp_mail() fonksiyonu mesajı oluşturur ve sunucudaki posta altyapısına teslim eder; başarılı dönmesi alıcının mesajı aldığı anlamına gelmez. Form, şifre sıfırlama ve WooCommerce e-postalarında uygulama, SMTP, DNS kimlik doğrulaması ve teslimat logları ayrı incelenmelidir.

wp_mailSMTPSPFDKIMWooCommerce Mail
root@sunucu:~SSH
wp_mail returned true but message not received
SMTP Error: Could not authenticate
Connection timed out on port 587
550 SPF/DKIM validation failed
WordPress katmanıÇekirdek, tema ve eklenti davranışı
PHP katmanıSürüm, uzantı, limit ve fatal error
Sunucu katmanıWeb servisi, veritabanı, disk ve loglar
Güvenli yöntemYedekle, logla, izole et ve doğrula
01
Teknik açıklama

WordPress neden e-posta göndermez veya mail neden ulaşmaz?

Sorun üç katmandan birinde olur: WordPress mesajı üretmez, SMTP/MTA mesajı kabul etmez veya uzak alıcı mesajı reddeder/spam’e taşır. Her katman farklı log ve test gerektirir.

Contact Form 7 veya WooCommerce ‘gönderildi’ mesajı gösterebilir ancak bu teslimat garantisi değildir. wp_mail_failed hook, SMTP logu ve sunucu mail logu birlikte incelenmelidir.

From adresi site domainiyle uyumlu olmalı; rastgele Gmail adresini From olarak kullanmak SPF/DMARC hizalamasını bozabilir. Ziyaretçi adresi Reply-To alanında kullanılmalıdır.

Port 25 veri merkezi tarafından engellenmiş olabilir; authenticated SMTP için çoğunlukla 587 STARTTLS veya 465 TLS kullanılır. Sağlayıcının doğru host, port ve encryption değerleri esas alınmalıdır.

SPF, DKIM, DMARC ve PTR/rDNS teslimat güvenilirliğini belirler. DNS kayıtları doğru olsa bile gönderici IP kara listede veya domain itibarı düşük olabilir.

SMTP parolasını wp-config.php veya eklenti veritabanında düz metin saklamak yerine mümkünse environment/secret yöntemi ve sınırlı yetkili uygulama parolası kullanın.

02
Log mesajları ve anlamları

WordPress wp_mail, SMTP ve teslimat hata mesajları

E-postada, tarayıcıda veya SSH günlüğünde gördüğünüz ifadeyi aratın. Her kartta anlam, muhtemel neden ve güvenli ilk işlem bulunur.

8 kayıt
01kritik

wp_mail() returned false

Anlamı: WordPress/PHPMailer mesajı gönderim katmanına teslim edememiştir.

Muhtemel neden: Geçersiz adres, hook hatası veya mailer problemi.

wp_mail_failed detayını loglayın.
02uyarı

wp_mail returned true but mail not received

Anlamı: Yerel mailer mesajı kabul etmiş ancak teslimat doğrulanmamıştır.

Muhtemel neden: Spam, uzak red, DNS kimliği veya queue.

MTA/SMTP teslimat logunu ve message ID’yi bulun.
03kritik

SMTP Error: Could not authenticate

Anlamı: SMTP sunucusu kullanıcı/parolayı kabul etmemiştir.

Muhtemel neden: Yanlış kimlik bilgisi, 2FA veya uygulama parolası.

Sağlayıcı panelinden kimlik bilgilerini doğrulayın.
04kritik

Connection timed out

Anlamı: WordPress SMTP host/porta bağlanamamıştır.

Muhtemel neden: Firewall, yanlış port, DNS veya servis erişimi.

Sunucudan host:port bağlantısını test edin.
05kritik

Connection refused

Anlamı: Hedef port bağlantıyı aktif olarak reddetmiştir.

Muhtemel neden: Yanlış port veya SMTP servisi kapalı.

Doğru port/encryption eşleşmesini kontrol edin.
06uyarı

550 SPF/DKIM/DMARC failed

Anlamı: Uzak sunucu kimlik doğrulamasını başarısız bulmuştur.

Muhtemel neden: Eksik/yanlış DNS kayıtları veya From hizasızlığı.

Gönderen domain DNS kayıtlarını doğrulayın.
07uyarı

Mailbox unavailable / user unknown

Anlamı: Alıcı adresi mevcut değildir veya reddedilmiştir.

Muhtemel neden: Yazım hatası, silinmiş mailbox.

Alıcı adresini ve bounce mesajını kontrol edin.
08uyarı

WooCommerce email pending/not sent

Anlamı: Sipariş e-posta olayı tetiklenmemiş veya queue’da kalmıştır.

Muhtemel neden: Action Scheduler, template veya SMTP.

Sipariş notları ve Scheduled Actions’ı inceleyin.

Bu ifadeyle eşleşen kayıt bulunamadı.

03
Güvenli ilk inceleme

SSH teşhis komutları ve hangi çıktıya bakılmalı?

Komutlar root erişimi içindir. Önce yalnızca durum ve log toplayın; nedeni görmeden kalıcı ayar değiştirmeyin.

WordPress test mail
wp eval 'var_dump(wp_mail("[email protected]","WordPress test","Test mesajı"));'

wp_mail fonksiyonunun uygulama katmanındaki sonucunu gösterir.

DNS kimlik kayıtları
dig +short TXT example.com
dig +short TXT default._domainkey.example.com
dig +short TXT _dmarc.example.com

SPF, DKIM ve DMARC kayıtlarını görüntüler.

SMTP port testi
timeout 10 openssl s_client -starttls smtp -connect smtp.example.com:587 -servername smtp.example.com </dev/null

Sunucudan SMTP bağlantısı ve TLS el sıkışmasını test eder.

Postfix logu
tail -n 150 /var/log/maillog 2>/dev/null || tail -n 150 /var/log/mail.log 2>/dev/null

Yerel mail teslimat ve red kayıtlarını gösterir.

Exim logu
tail -n 150 /var/log/exim_mainlog 2>/dev/null

cPanel/Exim gönderim ve kuyruk kayıtlarını gösterir.

Cron ve Action Scheduler
wp cron event list --fields=hook,next_run_relative | head -n 40

Gecikmiş e-posta işlerinin cron tarafını kontrol eder.

04
Barındırma ortamına göre

cPanel, Plesk ve panelsiz sunucuda uygulanacak kontroller

WordPress hatasının temel nedeni aynıdır ancak log yolları, PHP ayar ekranları ve servis yönetimi kullanılan barındırma altyapısına göre değişir.

cPanel / WHM

cPanel’de Email Deliverability, Track Delivery ve Exim logları kullanılır.

  • SPF/DKIM durumunu Email Deliverability’den doğrulayın.
  • Track Delivery ile message ID ve red nedenini bulun.
  • Harici SMTP kullanılıyorsa port 587 erişimini test edin.
grep -i 'ALICI@DOMAIN' /var/log/exim_mainlog | tail

Plesk Obsidian

Plesk’te Mail Settings, Mail Log Browser ve DNS kayıtları kontrol edilir.

  • Domain mail servisi yerel/harici kullanımına uygun olmalıdır.
  • Mail logunda gönderici, alıcı ve status kaydını bulun.
  • DKIM signing ve SPF önerilerini doğrulayın.
grep -i 'ALICI@DOMAIN' /var/log/maillog | tail

Panelsiz Linux Sunucu

Panelsiz sunucuda Postfix/Exim veya harici SMTP bağlantısı doğrudan izlenir.

  • MTA servis ve kuyruk durumunu kontrol edin.
  • Firewall outbound 25/465/587 politikasını doğrulayın.
  • PTR/rDNS kaydını sağlayıcı panelinden kontrol edin.
postqueue -p 2>/dev/null || exim -bp 2>/dev/null
05
Güvenli çözüm sırası

WordPress mail gönderme sorununu güvenli çözme adımları

Önce WordPress’in mesajı üretip üretmediğini, sonra SMTP/MTA kabulünü ve son olarak uzak teslimat ile DNS kimliğini doğrulayın.

1

Sorunun türünü ayırın

Şifre sıfırlama, form, WooCommerce veya tüm wp_mail mesajları mı etkileniyor belirleyin.

2

Kontrollü test mesajı oluşturun

Tek alıcıya test gönderip saat ve From adresini kaydedin.

3

Mailer/SMTP logunda message ID bulun

Uygulama true dönse bile MTA veya SMTP cevabını görün.

4

Host, port, encryption ve auth değerlerini doğrulayın

587 STARTTLS ile 465 implicit TLS’i karıştırmayın.

5

SPF, DKIM, DMARC ve PTR’ı kontrol edin

From domain ile kimlik doğrulamasının hizalı olmasını sağlayın.

6

Gmail/Outlook teslimatını doğrulayın

Spam, bounce ve sağlayıcı reputation kayıtlarını inceleyin.

06
Belirtiye göre ayrım

Özel senaryolar ve karar ağacı

Contact Form 7 mesajı gelmiyor

Formun To/From/Reply-To alanlarını ve SMTP logunu kontrol edin.

Şifre sıfırlama e-postası yok

admin_email, kullanıcı adresi, wp_mail ve spam klasörü incelenir.

WooCommerce sipariş maili gecikiyor

Scheduled Actions, cron ve sipariş durumu tetikleri kontrol edilir.

wp cron event list
SMTP authenticate hatası

Uygulama parolası, 2FA ve kullanıcı adı biçimi doğrulanır.

Sadece Gmail’e ulaşmıyor

SPF/DKIM/DMARC, PTR, IP reputation ve Gmail bounce mesajı incelenir.

Kesinlikle yapmayın

  • SMTP parolasını herkese açık dosyada saklamayın.
  • Ziyaretçi e-postasını From adresi yapmayın.
  • wp_mail true sonucunu teslimat kanıtı saymayın.
  • SPF kaydına birden fazla ayrı SPF TXT eklemeyin.
  • Port 25 engelini firewall’u tamamen kapatarak test etmeyin.
  • Bounce ve mail loglarını incelemeden sürekli eklenti değiştirmeyin.

Çözüm sonrası doğrulama

  • Test mesajı message ID ile SMTP/MTA tarafından kabul ediliyor.
  • Alıcı mesajı inbox veya spam’de görüyor.
  • SPF, DKIM ve DMARC doğrulaması geçiyor.
  • From ve Reply-To alanları doğru kullanılıyor.
  • WooCommerce/form/şifre sıfırlama ayrı ayrı çalışıyor.
  • Mail queue’da kalıcı deferred mesaj birikmiyor.
07
Resmî teknik kaynaklar

WordPress ve WP-CLI resmî dokümantasyonu

08
İç SEO içerik kümesi

İlgili WordPress hata çözümleri

09
Sık sorulan sorular

WordPress Mail Göndermiyor hakkında merak edilenler

wp_mail true dönerse mail ulaşmış mıdır?

Hayır. Yalnız WordPress’in mesajı mail katmanına başarıyla verdiğini gösterir; teslimat logla doğrulanmalıdır.

SMTP için hangi port kullanılmalı?

Sağlayıcıya göre çoğunlukla 587 STARTTLS veya 465 TLS kullanılır.

From adresi neden domainime ait olmalı?

SPF/DMARC hizalaması ve teslimat güveni için gönderen domain ile uyumlu olmalıdır.

Contact Form 7’de ziyaretçi adresi nereye yazılmalı?

From yerine Reply-To alanında kullanılmalıdır.

SPF, DKIM, DMARC gerekli mi?

Teslimat güvenilirliği ve sahteciliği önleme için güçlü biçimde önerilir.

WooCommerce maili neden gecikir?

Cron, Action Scheduler, sipariş durumu veya SMTP queue gecikmesi olabilir.

Harici SMTP daha mı iyi?

Doğru yapılandırılmış güvenilir bir servis genellikle teslimat ve loglama açısından avantaj sağlar.

EKA YAZILIM VE BİLİŞİM SİSTEMLERİ

Sunucunuzdaki hatayı kalıcı olarak çözelim

cPanel, WHM, CloudLinux, LiteSpeed, MariaDB, Exim ve güvenlik katmanlarını birlikte analiz ederek yalnızca servisi kaldırmak yerine arızanın temel nedenini gideriyoruz.

Sunucu Desteği Al WhatsApp
Top