یکی از مشکلات رایج در وبسایتهای وردپرسی، عدم تحویل صحیح ایمیلهای سیستمی است. ایمیلهای تأیید ثبتنام، بازیابی رمز عبور، اعلانهای فروشگاه و فرمهای تماس یا به مقصد نمیرسند یا در پوشه اسپم گیرنده قرار میگیرند. این مقاله علت اصلی این مشکل را بررسی کرده و راهحل جامع آن را با استفاده از افزونه WP Mail SMTP ارائه میدهد.
علت اصلی مشکل: محدودیتهای تابع PHP Mail
وردپرس بهصورت پیشفرض از تابع mail() در PHP برای ارسال ایمیل بهره میبرد. این تابع ایمیل را مستقیماً از سرور میزبان ارسال میکند، بدون احراز هویت، بدون امضای دیجیتال، و بدون هیچگونه تأییدیهای از هویت فرستنده.
سرورهای ایمیل مدرن نظیر Gmail، Outlook و Yahoo از پروتکلهای امنیتی استانداردی مانند SPF، DKIM و DMARC برای ارزیابی اعتبار فرستنده استفاده میکنند. ایمیلهایی که فاقد این اعتبارسنجیها باشند، بهعنوان پیامهای مشکوک شناسایی شده و به پوشه هرزنامه منتقل میشوند یا بهطور کامل رد میگردند.
راهحل: استفاده از پروتکل SMTP احراز هویتشده
SMTP یا Simple Mail Transfer Protocol، استانداردی است که سرویسهای ایمیل حرفهای برای ارسال پیام به کار میگیرند. در این روش، هویت فرستنده پیش از ارسال تأیید میشود، ایمیل دارای امضای دیجیتال است و نرخ تحویل بهطور قابلتوجهی افزایش مییابد.
افزونه WP Mail SMTP وردپرس را بهگونهای پیکربندی میکند که ایمیلها بهجای تابع PHP Mail، از طریق یک سرویس SMTP معتبر ارسال شوند.
نصب و پیکربندی افزونه WP Mail SMTP
مرحله اول: نصب افزونه
۱. وارد پیشخوان وردپرس شوید
۲. به افزونهها ← افزودن بروید
۳. عبارت WP Mail SMTP را جستجو کنید
۴. افزونه را نصب و فعالسازی نمایید
مرحله دوم: اجرای راهانداز اولیه
پس از فعالسازی، به WP Mail SMTP → Settings مراجعه کرده و گزینه Launch Setup Wizard را انتخاب کنید. این ویزارد فرآیند پیکربندی را بهصورت مرحلهبهمرحله راهنمایی میکند.
مرحله سوم: انتخاب سرویس ارسال ایمیل
الف) استفاده از SMTP سرور میزبان (گزینه پایه)
در صورتی که سرویسدهنده میزبانی، سرور SMTP در اختیار دارد:
پارامتر |
مقدار |
Mailer |
Other SMTP |
SMTP Host |
mail.yourdomain.com |
SMTP Port |
587 (TLS) یا 465 (SSL) |
Encryption |
TLS |
Username |
[email protected] |
Password |
رمز عبور صندوق ایمیل |