تنظیم smtp

تنظیم smtp
Common File Edit Streamline Icon: https://streamlinehq.com
علی جلادتی
Common File Text Clock Streamline Icon: https://streamlinehq.com
اکتبر 4, 2025
Attachment Streamline Icon: https://streamlinehq.com
Programming Hold Code 2 Streamline Icon: https://streamlinehq.com
html , css , java

فهرست مطالب

اگر صاحب یک وب‌سایت وردپرسی هستید، حتماً برایتان پیش آمده که ایمیل‌های مهمی مانند اطلاعیه‌های سفارش، ایمیل بازنشانی رمز عبور یا خوش‌آمدگویی به کاربران، هرگز به دست مخاطب نرسیده باشد. این مشکل یکی از رایج‌ترین چالش‌ها در دنیای وردپرس است. دلیل اصلی این مشکل، استفاده وردپرس از تابع mail پیش‌فرض PHP است که اغلب توسط میزبان‌های اشتراکی به درستی پیکربندی نشده یا توسط سرویس‌های گیرنده به عنوان اسپم علامت‌گذاری می‌شود.

راه حل نهایی و حرفه‌ای برای غلبه بر این مشکل، پیکربندی SMTP است. در این مقاله جامع، به طور کامل بررسی می‌کنیم که SMTP چیست، چرا برای سایت وردپرسی شما حیاتی است و چگونه به صورت گام به گام آن را تنظیم کنید.

SMTP چیست و چرا تنظیم آن برای وردپرس واجب است؟

SMTP یا پروتکل ساده انتقال ایمیل، استانداردی برای ارسال ایمیل در اینترنت است. وقتی شما از یک سرویس ایمیل مانند Gmail, Outlook, یا Yahoo استفاده می‌کنید، در پشت صحنه از سرور SMTP آن سرویس برای ارسال ایمیل‌های شما بهره می‌برد.

وردپرس به طور پیش‌فرض از تابع mail() استفاده می‌کند که ایمیل‌ها را مستقیماً از سرور شما ارسال می‌کند. این روش چندین مشکل بزرگ دارد:

  1. مشکلات تحویل (Delivery Issues): بسیاری از سرورهای میزبانی اشتراکی برای جلوگیری از سوءاستفاده، ارسال ایمیل از طریق تابع mail()را محدود کرده‌اند.

  2. مشکلات اسپم (Spam Problems): ایمیل‌های ارسالی از سرورهای اشتراکی اغلب فاقد احراز هویت مناسب (مانند DKIM و SPF) هستند، بنابراین سرویس‌های گیرنده (مانند Gmail) آن‌ها را به راحتی در پوشه اسپم قرار می‌دهند.

  3. عدم امکان ردیابی: شما نمی‌دانید که ایمیل ارسال شده است یا خیر، تحویل داده شده است یا اسپم فرض شده است.

با تنظیم SMTP، شما در واقع وردپرس خود را مجبور می‌کنید که به جای استفاده از تابع ناپایدار mail()، از یک سرور ایمیل اختصاصی و معتبر (مانند سرورهای Gmail، SendGrid، یا Mailgun) برای ارسال ایمیل‌ها استفاده کند. این کار مزایای زیر را به ارمغان می‌آورد:

  • قابلیت اطمینان فوق‌العاده: نرخ تحویل ایمیل‌های شما به شدت افزایش می‌یابد.

  • اعتبار و شهرت بهتر: با استفاده از سرویس‌های معتبر، ایمیل‌های شما با احتمال بسیار کمتری به عنوان اسپم علامت‌گذاری می‌شوند.

  • امکان ردیابی و گزارش‌گیری: بسیاری از سرویس‌های SMTP پیشرفته، آمار دقیقی از بازکردن ایمیل، کلیک‌ها و تحویل‌ها ارائه می‌دهند.

  • امنیت بالاتر: ارتباط بین سایت شما و سرور SMTP معمولاً با پروتکل‌های امنیتی مانند SSL/TLS رمزگذاری می‌شود.

روش تنظیم SMTP در وردپرس با استفاده از پلاگین

ساده‌ترین و کاربردی‌ترین روش برای تنظیم SMTP، استفاده از یک پلاگین است. پلاگین WP Mail SMTP توسط هزاران وب‌سایت استفاده شده و به عنوان استانداردی در این زمینه شناخته می‌شود.

مراحل گام به گام تنظیم SMTP با پلاگین WP Mail SMTP:

گام اول: نصب و فعال‌سازی پلاگین
به پیشخوان وردپرس خود بروید. به منوی پلاگین ها > افزودن جدید رفته و عبارت “WP Mail SMTP” را جستجو کنید. پلاگین را نصب و سپس فعال کنید.

گام دوم: پیکربندی پلاگین
پس از فعال‌سازی، به منوی  Mail SMTP > Settings بروید. حالا باید اطلاعات سرور SMTP خود را وارد کنید. در ادامه، تنظیمات برای چند سرویس محبوب را توضیح می‌دهیم.

الف) تنظیم SMTP با جیمیل (Gmail)

استفاده از جیمیل گزینه‌ای رایگان و در دسترس برای بسیاری از کاربران است.

  1. در صفحه تنظیمات پلاگین، در تب General، اطلاعات فرستنده را وارد کنید:

    • From Email: آدرس ایمیلی که می‌خواهید ایمیل‌ها از طرف آن ارسال شوند (حتماً باید همان آدرس جیمیل شما باشد).

    • From Name: نامی که می‌خواهید به عنوان فرستنده نمایش داده شود (مانند نام وب‌سایت شما).

  2. به تب Mailer بروید. از منوی کشویی، گزینه Other SMTP را انتخاب کنید.

  3. اطلاعات سرور SMTP جیمیل را به صورت زیر پر کنید:

    • SMTP Host: به صورت smtp.gmail.com

    • Encryption: از منوی کشویی، TLS را انتخاب کنید.

    • SMTP Port: روی پورت 587

    • Auto TLS: روشن (Enable)

    • Authentication: روشن (On)

    • SMTP Username: آدرس جیمیل کامل شما (مثلاً yourmail@gmail.com)

    • SMTP Password: اینجا یک مرحله مهم وجود دارد. به دلیل سیاست‌های امنیتی گوگل، شما نمی‌توانید از رمز عبور اصلی حساب جیمیل خود استفاده کنید. باید یک “رمز عبور برنامه” (App Password) ایجاد کنید.

      • به صفحه مدیریت حساب گوگل خود بروید (myaccount.google.com).

      • به بخش Security بروید و گزینه 2-Step Verification را فعال کنید (اگر قبلاً فعال نیست).

      • سپس در همان بخش، گزینه App passwords را پیدا کنید.

      • یک نام برای برنامه انتخاب کنید (مثلاً “My WordPress Site”) و روی “Generate” کلیک کنید.

      • رمز عبور ۱۶ کاراکتری که به شما داده می‌شود را کپی کرده و در فیلد “SMTP Password” قرار دهید.


  4. تغییرات را ذخیره کنید.

تست نهایی: در تب General پلاگین، گزینه Email Test را پیدا کنید. یک آدرس ایمیل معتبر وارد کرده و یک ایمیل تست ارسال کنید. اگر همه چیز درست باشد، ایمیل را دریافت خواهید کرد.

ب) تنظیم SMTP با سرویس‌های تخصصی (مانند SendGrid یا Mailgun)

سرویس‌هایی مانند SendGrid، Mailgun و Amazon SES برای ارسال حجم بالای ایمیل و کسب‌وکارها طراحی شده‌اند. آن‌ها سطوح بالایی از تحویل، گزارش‌گیری دقیق و مقیاس‌پذیری را ارائه می‌دهند. روند کلی کار با آن‌ها به این صورت است:

  1. ایجاد حساب: در یکی از این سرویس‌ها حساب کاربری ایجاد کنید.

  2. احراز هویت دامنه (Domain Verification): برای افزایش اعتبار، باید دامنه خود را در این سرویس‌ها تأیید کنید. این کار معمولاً با افزودن یک رکورد TXT یا CNAME در DNS دامنه شما انجام می‌شود.

  3. دریافت اطلاعات API/SMTP: پس از تأیید دامنه، این سرویس‌ها یک کلید API (API Key) یا اطلاعات ورود SMTP در اختیار شما قرار می‌دهند.

  4. پیکربندی در وردپرس: در پلاگین WP Mail SMTP، به جای “Other SMTP”، می‌توانید مستقیماً “SendGrid” یا “Mailgun” را به عنوان Mailer انتخاب کنید و تنها کلید API خود را در فیلد مربوطه قرار دهید. این روش حتی از تنظیمات SMTP استاندارد نیز ساده‌تر است.

تنظیم دستی SMTP (بدون استفاده از پلاگین)

اگر تمایلی به استفاده از پلاگین ندارید، می‌توانید با افزودن کدهایی به فایل functions.php قالب فرزند (Child Theme) خود، SMTP را به صورت دستی تنظیم کنید.

نمونه کد:

				
					// افزودن کدهای SMTP به وردپرس
add_action( 'phpmailer_init', 'my_smtp' );
function my_smtp( $phpmailer ) {
    $phpmailer->isSMTP();
    $phpmailer->Host       = 'smtp.yourserver.com'; // آدرس سرور SMTP شما
    $phpmailer->SMTPAuth   = true;
    $phpmailer->Port       = 587; // پورت معمول: 587 برای TLS, 465 برای SSL, 25 برای غیررمزنگاری
    $phpmailer->Username   = 'your-email@yourserver.com'; // نام کاربری SMTP
    $phpmailer->Password   = 'your-smtp-password'; // رمز عبور SMTP
    $phpmailer->SMTPSecure = 'tls'; // نوع رمزنگاری: tls یا ssl
    $phpmailer->From       = 'your-email@yourserver.com';
    $phpmailer->FromName   = 'Your Website Name';
}

				
			

هشدار: این روش فقط برای کاربران حرفه‌ای توصیه می‌شود. خطا در ویرایش کدها می‌تواند باعث از کار افتادن سایت شود. همچنین، ذخیره رمز عبور در فایل functions.php از نظر امنیتی روش درستی نیست.

جمع‌بندی نهایی

تنظیم SMTP یکی از اولین و مهم‌ترین اقدامات برای هر سایتی است. این کار نه تنها باعث می‌شود ایمیل‌های مهم سایت شما از دست نروند، بلکه اعتبار و حرفه‌ای بودن برند شما را نیز تضمین می‌کند. با استفاده از پلاگین‌های قدرتمندی مانند WP Mail SMTP، این فرآیند از همیشه ساده‌تر شده است و تنها در چند دقیقه می‌توانید از یک سیستم ارسال ایمیل مطمئن و قابل اتکا بهره‌مند شوید. همین امروز این تنظیمات را انجام دهید و برای همیشه با مشکل عدم دریافت ایمیل‌های وردپرس خداحافظی کنید.

برای پرسش سوال یا لایک/دیس‌لایک باید وارد حساب کاربری خود شوید.