رفع مشکل ارسال نشدن ایمیل در وردپرس

یکی از سوالات متداول در wplove این است که چگونه وردپرس مشکل ارسال ایمیل را برطرف و حل کرد؟.

بسیاری از کاربران سطح مبتدی ما از ما می پرسند که چرا پلاگین فرم تماس با آنها ایمیل ارسال نمی کند یا چرا هیچ اعلان وردپرس را نمی بینند

در این مقاله ، ما به شما نشان خواهیم داد که چگونه مشکل عدم ارسال ایمیل توسط وردپرس را برطرف کنید ، بنابراین وب سایت شما می تواند با اطمینان بیشتری ایمیل ارسال کند و پوشه هرزنامه را دور بزند.

How to fix the WordPress not sending email issue

چرا از سایت وردپرسی خود ایمیل نمی گیرید

متداول ترین دلیل ارسال نشده ایمیل ایمیل ها این است که سرور میزبانی وردپرس با استفاده از PHP ایمیل ارسال می کند که اگر آی پی سرور بلاک شده باشد دیگر یا ایمیل ارسال نمی شود یا در اینباکس طرف نمیرود و به پوشه اسپم می رود.

حتی اگر میزبان شما ، آن را درست پیکربند کرده باشدد، بسیاری از ارائه دهندگان خدمات ایمیل مانند Gmail و دیگران از ابزارهای مختلفی برای مبارزه با اسپم استفاده می کنند. این ابزارها سعی می کنند تشخیص دهند که یک ایمیل واقعاً از مکانی که ادعا می کند از آنجاست ارسال می شود یا خیر.

ایمیل های ارسال شده توسط وب سایت های وردپرس اغلب در این آزمون با موفقیت روبرو نمی شوند.

این بدان معناست که هنگام ارسال نامه الکترونیکی از سایت وردپرس شما ( پلاگین فرم تماس ، اعلان مدیر و غیره) ، حتی ممکن است آن را به پوشه هرزنامه گیرنده نرساند چه برسد به صندوق ورودی و اینباکس.

به همین دلیل است که توصیه می کنیم از WordPress برای ارسال خبرنامه ایمیل خود استفاده نکنید.

این نیز به همین دلیل است که ما به همه توصیه می کنیم برای ارسال ایمیل در وردپرس از SMTP استفاده کنند.

SMTP چیست؟

SMTP (پروتکل انتقال ایمیل ساده) استاندارد برای ارسال ایمیل است.

برخلاف تابع PHP mail ()  ، SMTP از احراز هویت مناسب استفاده می کند که منجر به تحویل پذیری بالای ایمیل می شود.

وردپرس دارای یک افزونه خوب  WP Mail SMTP  ااست که سایت وردپرس شما را برای ارسال ایمیل با استفاده از SMTP به جای عملکرد نامه () PHP پیکربندی می کند.

می توانید از آن برای اتصال به هر خدمات محبوب SMTP مانند SendinBlue ، Gmail (G Suite) ، Office365 ، Amazon SES و غیره. استفاده کنید

با توجه به تحریم های بین المملی و عدم امکان استفاده از این نوع سرویس ها به صورت مستقیم پیشنهاد میکنیم از سرویس ایرانی میل چی استفاده کنید

با این اوصاف ، بیایید نگاهی به چگونگی رفع مشکل ارسال ایمیل از طریق وردپرس بیندازیم.

نصب افزونه WP Mail SMTP

هر سرویس SMTP را که انتخاب می کنید ، باید پلاگین WP Mail SMTP را در سایت خود نصب کنید. این به شما امکان می دهد وردپرس را از استفاده از تابع PHP () داخلی به استفاده از سرویس SMTP خود تغییر دهید.

شما باید با وارد کردن نام و آدرس ایمیل کسب و کار که می خواهید ایمیل های سایت شما از آن شود. مطمئن شوید که از آدرس ایمیل مشابهی که برای سرویس پستی SMTP خود استفاده می کنید در اینجا استفاده می کنید.

The WP Mail SMTP settings page in your WordPress dashboard

می توانید ایمیل ها را مجبور به استفاده از این نام و آدرس ایمیل کنید ، حتی اگر پلاگین های دیگر (مانند WPForms ) تنظیمات مختلفی دارند. WP Mail SMTP تنظیمات سایر افزونه ها را نادیده می گیرد.

پس از آن ، شما باید سرویس پستی SMTP را برای سایت خود انتخاب کنید.

ما قصد داریم SMTP را با استفاده از Sendinblue  که رایگان هم هست به شما آموزش دهیم . اگر ترجیح می دهید  میتوانید ز از Gmail یا Office365 استفاده کنید ،

Entering the name and email address that you want your WordPress emails to come from

برای ثبت تنظیمات در  WP Mail SMTP ، باید یک حساب کاربری با Sendinblue ایجاد کنید. ما به مرحله بعدی می رویم و سپس به تنظیم نهایی WP Mail SMTP برمی گردیم.

ارسال ایمیل های وردپرس با استفاده از Sendinblue

Sendinblue یک سرویس ایمیل محبوب است که آنها به شما امکان می دهند تعداد زیادی ایمیل با قابلیت تحویل بالا ارسال کنید.

می توانید از Sendinblue برای ارسال حداکثر 300 ایمیل در روز به صورت رایگان استفاده کنید که برای اکثر وب سایت های کوچک بیش از حد کافی است.

اینها می تواند ایمیل هایی باشد که از طریق فرم تماس شما ، جزئیات حساب کاربری جدید ، ایمیل های بازیابی رمز عبور یا سایر ایمیل های ارسال شده از طریق سایت وردپرس شما ارسال شده باشد..

ابتدا باید به  وب سایت Sendinblue  برویدا و  یک حساب کاربری ایجاد کنید. برای تنظیم حساب خود بر روی دکمه “ثبت نام رایگان” کلیک کنید.

پس از ایجاد یک حساب ، داشبورد Sendinblue خود را مشاهده خواهید کرد. اگر در مرحله راه اندازی نمایه خود را کامل نکردید ، در اینجا از شما خواسته می شود که این کار را انجام دهید.

Select Sendinblue as your mailer in WP Mail SMTP

در مرحله بعدی ، باید با تیم پشتیبانی ایمیل بزنید  تا از آنها بخواهید حساب شما را تأیید کنند ، بنابراین می توانید از طریق Sendinblue ایمیل ارسال کنید.

به sendinblue.com/contact صفحه تماس با ما این سایت بروید و مانند متن زیر فرم را پر کنید:البته به انگلیسی وارد کنید ما به فارسی وارد کردیم در اینجا

  • درخواستی برای فعال کردن حساب شما
  • URL سایت شما
  • یادداشتی مبنی بر ارسال ایمیل  . اگر می خواهید از Sendinblue برای خبرنامه ایمیل استفاده کنید  ، باید اعلام کنید که برای شما ایمیل های بازاریابی نیز ارسال شود.

The Sendinblue dashboard

ممکن است از شما اطلاعات بیشتری خواسته شود. در غیر این صورت ، باید ایمیلی از Sendinblue دریافت کنید تا به شما اطلاع دهد که حساب شما تأیید شده است.

هنگامی که پیام خود را به تیم تماس ارسال کردید ، می توانید نام دامنه خود را به سایت اضافه کنید.

به یاد داشته باشید ، قبل از ادامه مرحله بعدی این آموزش ، نیازی نیست منتظر پاسخ باشید.

راه اندازی زیر دامنه برای وب سایت خود

ابتدا باید یک زیر دامنه تنظیم کنید. این مانند یک قسمت جداگانه از سایت شما است. پیشنهاد ما استفاده از mail1.yourdomain.com است.

توجه: میزبان وردپرس ممکن است به شما اجازه ندهد زیر دامنه mail را به عنوان زیر دامنه خود استفاده کنید ، به همین دلیل ما 1 را نیز در آنجا قرار داده ایم.

برای افزودن زیر دامنه خود ، به حساب میزبانی وب خود وارد شوید و بخش دامنه ها را در صفحه کنترل خود پیدا کنید.

بعد از ایجاد زیر دامنه ، باید آن را در حساب Sendinblue خود اضافه کنید.

افزودن زیر دامنه به Sendinblue

در حساب Sendinblue خود ، به “تنظیمات” بروید ، سپس “ارسال کنندگان شما” را پیدا کنید و روی دکمه “پیکربندی” کلیک کنید:

Adding a subdomain in WordPress

بعد ، روی برگه “دامنه ها” کلیک کنید و سپس روی دکمه “افزودن دامنه جدید” کلیک کنید.

Configuring your sender settings in Sendinblue

کل زیر دامنه را وارد کنید (به عنوان مثال mail1.yoursite.com) و کادر کنار “می خواهم از این نام دامنه برای امضای دیجیتالی ایمیل های خود استفاده کنم (SPF ، DKIM ، DMARC)” را علامت بزنید.

Adding a new domain in Sendinblue

بعد ، روی “ذخیره” کلیک کنید ، یک پنجره بازشو با چندین رکورد DNS مشاهده خواهید کرد.

این خطوط کد به Sendinblue اجازه می دهد نام دامنه شما را مجاز کند.

نکته: اگر این پنجره را به طور تصادفی ببندید نگران نباشید. با کلیک روی دکمه “تأیید اعتبار این دامنه” در زیر دامنه خود می توانید به آن برگردید:

Add your subdomain and check the box p >

یک برگه مرورگر جدید باز کرده و دوباره وارد حساب میزبانی وب خود شوید. شما باید دامنه خود را پیدا کنید و سوابق DNS را باز کنید.

شما باید 3 رکورد TXT ارائه شده توسط Sendinblue را در قسمت zone editor در پنل هاستینگ خود اضافه کنید اگر در این مورد مشکل دارید به پشتیبانی هاستینگ خود تیکت دهید و از آنان کم بخواهید.

 

اولین رکورد را به شرح زیر تکمیل کنید:
رکورد میزبان: mail._domainkey.mail1
نوع ضبط: TXT
مقدار TXT: این را از Sendinblue کپی کنید.
TTL: 1 روز

نکات: میزبان وب ممکن است Host Record یا Name را نامیده شود. اگر از چیز دیگری برای زیر دامنه خود استفاده کرده اید ، mail1 را تغییر دهید. نوع ضبط ممکن است لازم نباشد. مقدار TXT ممکن است داده TXT نیز نامیده شود: این اولین قطعه کد طولانی در جزئیات Sendinblue است. TTL می تواند 24 ساعت یا 86400 ثانیه باشد (هر دو معادل 1 روز است). ا

پس از اضافه کردن اولین رکورد ، روی “ذخیره” کلیک کنید.

بعد ، باید رکورد دوم را اضافه کنید. آن را به شرح زیر تکمیل کنید:

ضبط میزبان: mail1
نوع ضبط: TXT
مقدار TXT: v = spf1 شامل: spf.sendinblue.com mx ~ همه
TTL: 1 روز

پس از پایان کار ، روی “ذخیره” کلیک کنید.

پس از ذخیره آن ، باید رکورد سوم را اضافه کنید. آن را به شرح زیر تکمیل کنید:

ضبط میزبان: mail1
نوع ضبط: TXT
مقدار TXT: این را از Sendinblue کپی کنید. این سومین قطعه کد است.
TTL: 1 روز

پس از پایان کار ، ادامه دهید و آن رکورد را نیز ذخیره کنید.

بعد از اینکه سوابق خود را اضافه کردید ، به Sendinblue برگردید. برای هر رکورد ، روی دکمه ‘ضبط شده اضافه شده کلیک کنید. لطفاً آن را تأیید کنید. »ممکن است 24 تا 48 ساعت طول بکشد تا Sendinblue بتواند سوابق شما را تأیید کند ، اما اغلب خیلی سریعتر انجام می شود.

اگر با کلیک کردن روی آن دکمه اتفاقی نیفتد ، سوابق هنوز قابل تأیید نیستند. بعداً دوباره بررسی کنید و ببینید آیا آنها تأیید شده اند. پس از دستیابی به آنها ، کلمه “پیکربندی شده” را در کنار سوابق به رنگ سبز مشاهده خواهید کرد:

DNS TXT records in Bluehost

تا زمانی که منتظر تأیید هستید می توانید با این آموزش ادامه دهید.

پایان دادن به تنظیم WP نامه SMTP برای استفاده از Sendinblue

به تنظیمات WP Mail SMTP خود در داشبورد وردپرس برگردید. شما باید قبلاً از طریق ایمیل و از نام وارد شده باشید ، اما در غیر اینصورت ، اکنون می توانید این کار را انجام دهید.

کادر “Return Path” را علامت نزنید زیرا این گزینه توسط Sendinblue استفاده نمی شود.

بعد ، برای “ارسال کننده” خود بر روی “Sendinblue” کلیک کنید.

Entering the name and email address that you want your WordPress emails to come from

برای یافتن کلید API خود باید به حساب Sendinblue خود بروید. فقط روی پیوند زیر جعبه ‘API Key’ کلیک کنید و داشبورد حساب Sendinblue شما در مکان درست ، در یک برگه جدید باز می شود.

کلید v3 API را از این صفحه کپی کنید.

Select Sendinblue as your mailer in WP Mail SMTP

تبریک می گویم اکنون همه موارد را تنظیم کرده اید. مرحله آخر ارسال ایمیل آزمایشی برای اطمینان از کارکرد همه چیز است.

به برگه “Email Test” از WP Mail SMTP بروید و یک آدرس ایمیل وارد کنید تا ایمیل به آن ارسال شود. این به صورت ایمیل سرپرست سایت پیش فرض می شود. روی “ارسال ایمیل” کلیک کنید.

باید پیام “ایمیل HTML تست با موفقیت ارسال شد!” را مشاهده کنید تا صندوق ورودی خود را بررسی کنید تا ببینید آیا وارد شده است. به این شکل خواهد بود:

Getting the API from Sendinblue

توجه: اگر حساب Sendinblue شما هنوز فعال نشده است ، پیام را دریافت خواهید کرد: [allow_denied]: ارسال ایمیل امکان پذیر نیست. حساب SMTP شما هنوز فعال نشده است .

راه های جایگزین برای رفع مشکل ایمیل وردپرس

همانطور که از لیست WP Mail SMTP مشاهده می کنید از گزینه های ارسال کننده ، نیازی به استفاده از Sendinblue نیست. اگرچه بهترین پیشنهاد رایگان ماست ، گزینه های دیگری نیز وجود دارد که می توانید از جمله Office 365 ، Gmail / G Suite

استفاده از Gmail یا G Suite با WP Mail SMTP برای رفع مشکل ارسال نشدن ایمیل های وردپرس

اگر حساب Gmail یا G Suite دارید ، می توانید از آن برای ارسال ایمیل های خود استفاده کنید. هنگام استفاده از افزونه WP Mail SMTP نیازی به وارد کردن جزئیات ورود ایمیل خود در وردپرس نخواهید داشت.

برای استفاده از Gmail یا G Suite ، WP Mail SMTP را  تنظیم کنید.

استفاده از Gmail یا G Suite چند اشکال اساسی دارد.

یکی این است که شاید لازم باشد با میزبان وب خود تماس بگیرید تا گواهی های خاصی  را برای کار دادن  سرویس جیمیل نصب کنند.

مورد دیگر این است که اگر آدرس ایمیل را در آینده تغییر دهید ، باید تمام مراحل را دوباره طی کنید.

استفاده از Office 365 / Outlook با WP Mail SMTP برای رفع ایمیل های وردپرس

شما باید WP Mail SMTP را تنظیم کنید ، سپس گزینه “Other SMTP” را کلیک کنید. با این کار فرم برای تکمیل باز می شود. با استفاده از تنظیمات زیر آن را پر کنید:

میزبان SMTP: smtp.office365.com
رمزگذاری: TLS
بندر SMTP: 587
خودکار TLS: (اجازه روشن است)
احراز هویت: (ترک روشن) نام کاربری SMTP: آدرس ایمیل حساب Office 365 شما
گذرواژه SMTP: رمز ورود حساب Office 365 شما

یک مشکل اساسی در این روش این است که به ذخیره رمز ورود خود در متن ساده در وردپرس نیاز دارد. این مورد ایمن نیست و گذرواژه شما برای سایر مدیران حساب شما قابل مشاهده است.

امیدواریم این مقاله به شما کمک کند یاد بگیرید چگونه وردپرس را برای عدم ارسال ایمیل ارسال کنید.

.

دیدگاهتان را بنویسید


Fatal error: Uncaught wfWAFStorageFileException: Unable to save temporary file for atomic writing. in /home/wekjriusd1/public_html/wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php:35 Stack trace: #0 /home/wekjriusd1/public_html/wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php(659): wfWAFStorageFile::atomicFilePutContents('/home/wekjriusd...', '<?php exit('Acc...') #1 [internal function]: wfWAFStorageFile->saveConfig('livewaf') #2 {main} thrown in /home/wekjriusd1/public_html/wp-content/plugins/wordfence/vendor/wordfence/wf-waf/src/lib/storage/file.php on line 35