اگر سایت وردپرسی شما ایمیل ارسال نمیکند، تنها نیستید. این یکی از رایجترین مشکلات وردپرس است. فرمهای تماس ایمیل نمیفرستند، ایمیلهای ریست پسورد به دست شما نمیرسند و اطلاعرسانیهای مهم هم گاهی کاملاً ناپدید میشوند. خبر خوب این است که رفع مشکل ارسال ایمیل در وردپرس معمولا پیچیده نیست و در اکثر موارد با یک تغییر ساده حل میشود: استفاده از SMTP به جای روش پیشفرض وردپرس. در این راهنما بررسی میکنیم چرا مشکل عدم ارسال ایمیل در وردپرس رخ میدهد و چطور میتوان آن را بهصورت اصولی برطرف کرد.
چرا از وردپرس ایمیل ارسال نمیشود؟
رایجترین دلیل مشکل عدم ارسال ایمیل در وردپرس این است که هاست یا سرور مجازی وردپرس شما بهدرستی از تابع PHP mail() پشتیبانی نمیکند یا آن را محدود کرده است. وردپرس بهصورت پیشفرض از همین روش برای ارسال ایمیل استفاده میکند.
این روش چند مشکل اساسی دارد. اول اینکه هیچگونه احراز هویتی انجام نمیدهد و ایمیل بدون تأیید ارسال میشود. دوم اینکه سرویسهای ایمیل مثل Gmail و Outlook چنین ایمیلهایی را بهراحتی مشکوک تشخیص میدهند.
در نتیجه حتی اگر ایمیل ارسال شود، ممکن است وارد اسپم شود یا اصلا به مقصد نرسد. به همین دلیل مشکلاتی مثل عدم ارسال ایمیل خرید در وردپرس یا نرسیدن ایمیلهای فرم تماس بسیار رایج است. اگر تازه شروع به کار کردهاید، میتوانید با آموزش ساخت سایت وردپرس یک سایت کامل را از صفر راهاندازی کنید.
SMTP چیست و چرا مشکل را حل میکند؟
SMTP مخفف Simple Mail Transfer Protocol است و استاندارد اصلی ارسال ایمیل در اینترنت محسوب میشود.
برای درک سادهتر، میتوان گفت روش PHP mail() مثل ارسال یک نامه بدون هویت است، اما SMTP مثل ارسال نامه رسمی با تایید هویت فرستنده عمل میکند.
SMTP با استفاده از احراز هویت باعث میشود سرویسهای ایمیل مطمئن شوند پیام واقعا از طرف سایت شما ارسال شده است. همین موضوع باعث افزایش شدید نرخ تحویل ایمیل و کاهش ورود به پوشه اسپم میشود.
چگونه مشکل عدم ارسال ایمیل در وردپرس را با SMTP حل کنیم؟
برای حل مشکل عدم ارسال ایمیل در وردپرس بهترین روش استفاده از SMTP است. در وردپرس این کار معمولا با افزونههایی مثل WP Mail SMTP انجام میشود.
این افزونه، سیستم ارسال ایمیل وردپرس را از حالت پیشفرض خارج کرده و آن را به یک سرویس ایمیل معتبر متصل میکند. این سرویس میتواند شامل گزینههایی مثل Gmail، SendLayer، Brevo یا Amazon SES باشد.
با انجام این کار، تمام ایمیلهای سایت از جمله ایمیلهای فرم تماس، اطلاعرسانیها و ایمیلهای خرید، به شکل قابل اعتماد ارسال خواهند شد.
مرحله ۱: نصب افزونه WP Mail SMTP
در هر سرویسی که برای SMTP انتخاب کنید، اولین قدم نصب افزونه WP Mail SMTP روی سایت وردپرسی شما است. این افزونه باعث میشود وردپرس به جای استفاده از تابع پیشفرض PHP mail() از سرویس SMTP برای ارسال ایمیل استفاده کند.
این تغییر کمک میکند مشکل عدم ارسال ایمیل در وردپرس به شکل اصولی برطرف شود و ایمیلها با قابلیت احراز هویت ارسال شوند.
در قدم اول، افزونه WP Mail SMTP را نصب و فعال کنید. اگر با روند نصب افزونهها در وردپرس آشنا نیستید، ابتدا افزونه را از مخزن وردپرس نصب کرده و سپس آن را فعال کنید.
بعد از فعالسازی، وارد پیشخوان وردپرس شوید و از منوی کناری روی گزینه WP Mail SMTP کلیک کنید تا وارد بخش تنظیمات افزونه شوید. در این بخش میتوانید پیکربندی اولیه برای اتصال به سرویس SMTP را انجام دهید.

در ابتدا باید نام و آدرس ایمیل تجاریای را وارد کنید که میخواهید ایمیلهای سایت شما از طرف آن ارسال شوند.
حتما از همان آدرس ایمیلی استفاده کنید که قرار است در سرویس SMTP شما نیز مورد استفاده قرار بگیرد
میتوانید انتخاب کنید که ایمیلها همیشه از این نام و آدرس ایمیل استفاده کنند، حتی اگر افزونههای دیگری مثل WPForms تنظیمات متفاوتی داشته باشند. WP Mail SMTP تنظیمات سایر افزونهها را نادیده گرفته و جایگزین آنها میشود.
پس از آن، باید یک سرویس ارسال ایمیل SMTP برای سایت خود انتخاب کنید. در این آموزش، ما از سرویس SendLayer برای راهاندازی SMTP استفاده خواهیم کرد.
مرحله ۲: راهاندازی سرویس ارسال ایمیل SMTP
برای تکمیل تنظیمات WP Mail SMTP، لازم است یک حساب کاربری در سرویس SendLayer ایجاد کنید. در ادامه این کار را انجام میدهیم و سپس دوباره به تنظیمات افزونه برمیگردیم تا فرآیند را نهایی کنیم؛ بنابراین این تب را باز نگه دارید.
SendLayer چیست؟
SendLayer یک سرویس قابل اعتماد برای ارسال ایمیلهای تراکنشی است. این نوع ایمیلها شامل پیامهای خودکاری هستند که سایت شما ارسال میکند، مانند ارسال فرمهای تماس، تأیید سفارشها، یا ایمیلهای بازیابی رمز عبور.
با استفاده از SendLayer میتوانید تا ۲۰۰ ایمیل بهصورت رایگان ارسال کنید که برای شروع بیشتر وبسایتهای کوچک کافی است.
این ایمیلها میتوانند شامل پیامهای فرم تماس، اطلاعات حساب کاربری جدید، ایمیلهای بازیابی رمز عبور یا هر نوع ایمیل دیگری باشند که از طریق وردپرس ارسال میشود.
ایجاد حساب در SendLayer
در ابتدا وارد وبسایت SendLayer شوید و یک حساب کاربری ایجاد کنید. در صفحه قیمتگذاری، روی لینک Try our SendLayer free trial (send up to 200 emails) کلیک کنید تا فرآیند ساخت حساب شروع شود.
پس از اینکه حساب کاربری خود را ایجاد کردید، داشبورد SendLayer برای شما نمایش داده میشود.
حالا که یک حساب SendLayer دارید، میتوانیم سرویس ایمیل شما را به وردپرس متصل کنیم.
مرحله ۳: اتصال سایت وردپرس به SendLayer
قبل از اینکه بتوانید با SendLayer ایمیل ارسال کنید، باید دامنه خود را تأیید کنید.
این کار به سرورهای ایمیل ثابت میکند که شما مالک واقعی دامنه ارسالکننده هستید و ایمیلهایی که ارسال میکنید از یک منبع معتبر میآیند.
برای تأیید دامنه، از داشبورد SendLayer روی دکمه نارنجی «Add Domain» کلیک کنید.
در صفحه بعد، نام دامنه خود را در فیلد مشخصشده وارد کنید.
سپس روی دکمه Add Domain کلیک کنید تا دامنه شما به SendLayer اضافه شود.
پس از اینکه دامنه خود را اضافه کردید، SendLayer پنج رکورد DNS را به شما نمایش میدهد که باید آنها را در تنظیمات دامنه خود وارد کنید.
رکوردهای DNS (Domain Name System) تنظیماتی هستند که دامنه شما را به سرویسهای مختلف متصل میکنند. این رکوردهای خاص، مالکیت شما روی دامنه را تأیید میکنند و به SendLayer اجازه میدهند از طرف دامنه شما ایمیل ارسال کند.
اتصال DNS دامنه به SendLayer
نگران نباشید اگر این مرحله کمی پیچیده به نظر میرسد. در واقع شما فقط باید چند مقدار متنی را از SendLayer کپی کرده و در تنظیمات DNS دامنه خود وارد کنید.
این مرحله برای این است که SendLayer بتواند تأیید کند شما مالک دامنه هستید و اجازه دارید از طرف آن ایمیل ارسال کنید.
ورود به تنظیمات DNS دامنه
ابتدا وارد پنل مدیریت دامنه یا هاست وردپرس خود شوید. جایی که تنظیمات DNS دامنه در آن قرار دارد (معمولا با عنوانهایی مثل DNS Management، DNS Records یا Zone Editor مشخص میشود).
در این بخش، لیست رکوردهای دامنه شما نمایش داده میشود و میتوانید رکورد جدید اضافه کنید.
اضافه کردن رکوردهای DNS
در داشبورد SendLayer، چند رکورد DNS شامل CNAME و TXT به شما نمایش داده میشود.
شما باید این رکوردها را یکییکی در پنل DNS خود اضافه کنید:
- نوع رکورد را مطابق چیزی که SendLayer مشخص کرده انتخاب کنید (CNAME یا TXT)
- مقدار Host / Name را از ستون Hostname در SendLayer کپی کنید
- مقدار Value / Target را از ستون Value در SendLayer وارد کنید
- مقدار TTL را روی حالت پیشفرض یا ۱۵ دقیقه قرار دهید (اگر قابل تنظیم بود)
برای رکورد TXT نیز همین روند را انجام دهید، فقط مقدار آن در فیلد TXT Value قرار میگیرد.
تأیید اتصال در SendLayer
بعد از اینکه همه رکوردها را اضافه کردید، دوباره به SendLayer برگردید.
گزینهای وجود دارد که باید آن را فعال کنید با این مضمون:
I have added these DNS records and am ready to proceed
سپس روی دکمه Verify DNS Records کلیک کنید.
نکته مهم درباره زمان تأیید
تأیید DNS ممکن است بلافاصله انجام نشود. معمولا بین چند دقیقه تا ۲۴–۴۸ ساعت زمان نیاز دارد تا تغییرات در سطح اینترنت اعمال شوند.
اگر در ابتدا تأیید انجام نشد، طبیعی است. کافی است بعدا دوباره بررسی کنید یا از داخل داشبورد SendLayer وضعیت DNS را چک کنید.
مرحله ۴: تکمیل تنظیمات WP Mail SMTP برای استفاده از SendLayer
در این مرحله، تنظیمات را نهایی میکنیم تا وردپرس بتواند از طریق SendLayer ایمیل ارسال کند.
ابتدا وارد حساب کاربری SendLayer خود شوید و API Key را پیدا کنید.
از داشبورد SendLayer وارد بخش Settings » API Keys شوید. در این قسمت، یک API Key پیشفرض مشاهده میکنید که هنگام تأیید دامنه در SendLayer بهصورت خودکار ایجاد شده است.
کلید API را از این صفحه با کلیک روی آیکون کپی، کپی کنید.
پس از انجام این کار، به تب مربوط به راهاندازی WP Mail SMTP برگردید.
سپس کلید API را در فیلد مربوطه جایگذاری کنید.
تبریک! حالا همه تنظیمات را انجام دادهاید. آخرین مرحله این است که یک ایمیل تست ارسال کنید تا مطمئن شوید همه چیز بهدرستی کار میکند.
به مسیر WP Mail SMTP » Tools بروید. در تب Email Test یک آدرس ایمیل برای ارسال تست وارد کنید. بهصورت پیشفرض، این بخش از ایمیل مدیر سایت استفاده میکند. سپس روی دکمه Send Email کلیک کنید.
باید پیام «Test HTML email was sent successfully!» را مشاهده کنید.
سپس صندوق ورودی ایمیل خود را بررسی کنید تا ببینید ایمیل تست به درستی دریافت شده است. این ایمیل معمولا به این شکل نمایش داده میشود:

روشهای جایگزین برای حل مشکل عدم ارسال ایمیل در وردپرس
همانطور که در لیست گزینههای WP Mail SMTP مشخص است، شما الزاماً مجبور نیستید از SendLayer استفاده کنید. اگرچه این سرویس یکی از پیشنهادهای ساده و رایگان برای شروع است، اما گزینههای دیگری هم وجود دارند؛ مثل Microsoft 365، Gmail (Google Workspace)، Amazon SES و سایر سرویسهای SMTP. اگر هاست فعلی پاسخگوی نیاز شما نیست، میتوانید از گزینههای قدرتمندتر مثل خرید VPS استفاده کنید.
استفاده از Gmail یا Google Workspace برای رفع مشکل ایمیل وردپرس
اگر یک حساب Gmail دارید، میتوانید از آن برای ارسال ایمیلهای سایت استفاده کنید. در این روش نیازی نیست اطلاعات ورود ایمیل خود را مستقیما در وردپرس وارد کنید، چون WP Mail SMTP اتصال را بهصورت امن مدیریت میکند.
برای استفاده از Gmail یا Google Workspace، ابتدا مانند مراحل قبلی افزونه WP Mail SMTP را تنظیم کنید. سپس در بخش انتخاب سرویس ایمیل، گزینه Google / Gmail را انتخاب کنید.
در ادامه میتوانید تنظیمات را با قابلیت راهاندازی یککلیکی (One-Click Setup) پیکربندی کنید.
این روش ساده است و نیاز به ساخت اپلیکیشن جداگانه ندارد. کافی است وارد حساب Gmail خود شوید و سپس روی گزینه Save Settings کلیک کنید تا تنظیمات ذخیره شوند.

استفاده از Microsoft 365 با WP Mail SMTP برای رفع مشکل ایمیل وردپرس
اگر از Microsoft Office 365 یا Outlook برای ایمیلهای کاری خود استفاده میکنید، میتوانید از همان حساب برای ارسال ایمیلهای وردپرس نیز استفاده کنید.
اما این روش نسبت به گزینههایی مثل Gmail یا SendLayer کمی پیچیدهتر است. برای استفاده از آن باید ابتدا WP Mail SMTP را مانند مراحل قبلی تنظیم کنید و سپس در بخش انتخاب سرویس ایمیل، گزینه 365 / Outlook را انتخاب کنید.
برای تکمیل اتصال، لازم است یک اپلیکیشن در Microsoft Azure ثبت کنید و اطلاعات مورد نیاز را در تنظیمات WP Mail SMTP وارد کنید. این مرحله برای ایجاد ارتباط امن بین وردپرس و سرویس ایمیل مایکروسافت ضروری است.

سوالات متداول
چرا ایمیلهای وردپرس به اسپم میروند؟
ایمیلهای وردپرس معمولا به این دلیل وارد پوشه اسپم میشوند که از تابع PHP mail() برای ارسال استفاده میکنند. این روش هیچگونه احراز هویتی ندارد و سرویسهای ایمیل مثل Gmail نمیتوانند تشخیص دهند که ایمیل واقعا از دامنه شما ارسال شده است. در نتیجه، ایمیل بهعنوان پیام مشکوک علامتگذاری میشود. استفاده از SMTP با احراز هویت صحیح این مشکل را برطرف میکند.
آیا WP Mail SMTP رایگان است؟
بله، WP Mail SMTP نسخه رایگان دارد که از طریق مخزن وردپرس در دسترس است و با اکثر سرویسهای SMTP سازگار است. همچنین نسخه Pro این افزونه امکانات بیشتری مثل ثبت لاگ ایمیلها، رهگیری ارسال، و اتصال پشتیبان (Backup Connection) ارائه میدهد.
از کجا بفهمیم ایمیلهای وردپرس درست کار میکنند؟
بعد از تنظیم WP Mail SMTP، وارد مسیر WP Mail SMTP » Tools در پیشخوان وردپرس شوید.
در بخش Email Test یک ایمیل تست ارسال کنید. اگر ایمیل را در Inbox دریافت کردید (نه پوشه Spam)، یعنی تنظیمات شما بهدرستی انجام شده و مشکل عدم ارسال ایمیل در وردپرس برطرف شده است.













