رفع مشکل ارسال ایمیل در وردپرس یکی از مباحثی است که برای هر وبسایت وردپرسی میتونه پیش بیاد و مواقعی به وجود میاد که هرکاری میکنید تا ایمیلهای شما به دست گیرندگان سایت برسند ارسال نشده و عملا به هیچ شکل نمیتونید تا ایمیلهای خودتون را به دست گیرندگان خود برسونید.
این داستان فقط به اینجا ختم نشده و میتونه در مواردی مثل ارسال نشدن ایمیل هنگام ثبت نام در وردپرس، عدم ارسال ایمیل هنگام ارسال نظر در سایت و عدم ارسال ایمیل هنگام ارسال یک فرم تماس در وردپرس رخ بده که برای مدیریت سایت هم هیچ ایمیلی از سمت وردپرس ارسال نشود. بنابراین در این آموزش از رفع خطاهای رایج وردپرس قصد دارم تا ابتدا به این موضوع بپردازم که چرا اصلا ایمیلهای ما در وردپرس ارسال نمیشوند؟
سپس به معرفی راهکارهایی جایگزین بپردازم که با استفاده از اونها میتونید تا با خیال راحت ایمیلهای خودتون را در وردپرس برای کاربران ارسال کنید، پس تا انتها همراه ما باشید.😉
چرا ایمیلهای وردپرس ارسال نمیشوند؟
همونطوری که میدونید وردپرس برای ارسال ایمیل از تابع ()mail در زبان php استفاده میکنه که در صورت فعال نبودن این تابع بر روی هاست به هر دلیلی عملا هیچ ایمیلی به گیرندگان از سوی وردپرس هم ارسال نخواهد شد، بنابراین لازمه تا این تابع همیشه بر روی هاست فعال بوده و به درستی کار کنه؛ از طرف دیگه گاهی هم پیش میاد که ایمیلهای شما به درستی ارسال میشوند و هیچ مشکلی هم در تابع ایمیل php هاست وجود نداره اما به دلایل گوناگونی ایمیل شما به عنوان اسپم نزد سرویس دهندههای ایمیل شناسایی شده و در این حالت معمولا ایمیلها به پوشه هرزنامه ارسال خواهند شد.
پس میبینیم که در حالت کلی برای ارسال نشدن ایمیل در وردپرس دو مشکل داریم که در حالت کلی یا ایمیلی ارسال نمیشه و یا اینکه ایمیل ارسال میشه اما به دلیل اینکه ایمیل شما به عنوان اسپم شناخته شده هر ایمیلی که ارسال میکنید وارد پوشه هرزنامه هاست خواهد شد که برای رفع این مشکل تنها راهش اینه که افراد زیادی ایمیل شما را به عنوان not spam ثبت کنند تا سرویس دهندههای ایمیل مثل گذشته ایمیل شما را به عنوان هرزنامه و اسپم در نظر نگیرند و ایمیلها به درستی وارد صندوق ورودی کاربران شود.
رفع مشکل ارسال ایمیل در وردپرس
پس طبق توضیحات بالا در اولین اقدام باید شما با مدیریت هاست خودتون در ارتباط باشید و ازشون بخواهید تا مشکل ارسال نشدن ایمیل در هاست را بررسی کنند و اگر هاست شما در تابع ایمیل php دچار مشکل شده اون را برطرف کنند تا امکان ارسال ایمیل برای شما فراهم شود.
اما برای رفع مشکل عدم ارسال ایمیل وردپرس بهترین راهکار این خواهد بود تا از یک روش برای ارسال ایمیل واسطه استفاده کنید. یعنی اینکه از سایتهایی که با قرار دادن یک API میتونند تا ایمیلهای ارسالی شما را به دست کاربران برسانند استفاده کنید. شاید حالا از خودتون بپرسید که چنین راهکاری چه مزیتهایی میتونه داشته باشه؟ در پاسخ به این سوال میشه به موارد زیر اشاره کرد که عبارتند از:
- اطمینان از اینکه ایمیلهای ارسالی به صندوق ورودی ارسال خواهند شد و هیچگاه به عنوان اسپم شناسایی نشده و در پوشه هرزنامه قرار نخواهند گرفت.
- استفاده مناسب از منابع هاست به دلیل اینکه ایمیلهای ارسالی توسط تابع ایمیل php هاست ارسال نمیشوند که در این صورت درصد اینکه سایت شما به عنوان اسپم شناسایی بشه وجود نخواهد داشت و هم اینکه اگر سایت شما پربازدید باشه و روزانه ایمیلهای زیادی در اون ارسال شود با محدودیت در ارسال ایمیل مواجه نخواهید شد.
پس میبینیم که ارسال ایمیل به صورت یک واسطه برای سایت ما بهتر خواهد بود و اطمینان کاملی هم از این خواهیم داشت که ایمیلها صددرصد به دست کاربران در صندوق ورودی میرسند. بنابراین برای راهاندازی یک سرویس واسط میتونید تا از راهکاری که در ادامه به اون میپردازم استفاده کنید.
- افزونه WP Mail SMTP by WPForms که کار با آن در نظر اغلب کاربران راحت تر هست. چون مقادیر فیلدها به صورت اتوماتیک تکمیل میشه.
- افزونه Easy WP SMTP از نظر کاربران با سیستم مدیریت محتوا سازگاری بیشتری از خود نشان داده.
در ادامه به شرح مفصل هر دو افزونه و نحوه کاربرد هر کدام می پردازیم.
1. افزونه WP Mail SMTP by WPForms
یکی از راه کارهای سریع برای رفع مشکل عدم ارسال ایمیل در سیستم مدیریت محتوای وردپرس استفاده از افزونه WP Mail SMTP می باشد. این افزونه تا کنون بیش از یک میلیون نصب فعال داشته و توانسته امتیاز 4.3 از 5 را در مخزن وردپرس به نام خود ثبت کند. نکته قابل توجه در خصوص این افزونه سادگی و سهولت استفاده از آن است. چرا که با انتخاب گزینه های دلخواه فیلدهای مربوط به آن گزینه به صورت اتوماتیک مقداردهی می شوند و دیگر نیازی نیست تا به دنبال تنظیمات تخصصی و شماره پورت های مربوطه باشید.
برای شروع کار ابتدا به کمک آموزش نحوه ورود به مدیریت وردپرس به پیشخوان وردپرس خود مراجعه نمایید. سپس مراحل زیر را دنبال کنید:
- از پیشخوان وردپرس روی گزینه افزونه ها کلیک کنید.
- روی زیر منوی افزودن کلیک کنید تا به بخش نصب افزونه ها هدایت شوید.
- در فیلد جستجو عبارت smtp را وارد نموده و آن را جستجو کنید.
افزونه های متعددی را در این لیست مشاهده می کنید که کارکردی تقریبا یکسان دارند. افزونه WP Mail SMTP by WPForms را از لیست بیابید. روی دکمه “هم اکنون نصب کن” کلیک کنید تا نصب افزونه آغاز گردد. پس از آن دکمه ای تحت عنوان “فعال” نمایش داده می شود. جهت فعالسازی افزونه روی آن کلیک کنید.
پس از نصب و فعالسازی افزونه، منوی جدیدی تحت عنوان به پیشخوان وردپرس شما افزوده خواهد شد.
تنظیمات افزونه wp mail smtp by wpforms
از پیشخوان وردپرس به منوی ایمیل و زیر منوی تنظیمات مراجعه نمایید. با صفحه ای مواجه خواهید شد که دارای دو سربرگ به شرح زیر می باشد:
- عمومی: در این قسمت می توانید تنظیمات عمومی مربوط به پیکربندی افزونه را اعمال نمایید.
- آزمایش ایمیل: در این سربرگ ایمیلی به عنوان تست ارسال می نماییم تا صحت عملکرد افزونه را ارزیابی کنیم.
دقت داشته باشید پیش از شروع کار می بایست یک ایمیل در هاست خود ایجاد نمایید تا عمل ارسال و دریافت ایمیل های وردپرس برمبنای آن و به واسطه سرویس ایمیل هاستتان صورت گیرد.
در سربرگ عمومی، تنظیمات خود را بر اساس توضیحات زیر اعمال نمایید:
- ایمیل ارسال کننده: آدرس مد نظرتان جهت ارسال و دریافت ایمیل را در این فیلد وارد کنید. (ایمیل ثبت شده در سرویس هاست)
- نام ارسال کننده: نامی که قصد دارید شخص گیرنده مشاهده نماید را وارد کنید.
- مسیر بازگشت: در صورتی که ایمیل های ارسالی با مشکل مواجه شوند یا به هر دلیلی برگشت بخورند یک گزارش از آن ها دریافت خواهید کرد.
- ارسال کننده ایمیل: در این قسمت روی سرویس ارسال کننده ایمیل دلخواهتان کلیک کنید. که روی حالت پیشفرض (هیچیک) قرار دارد. در حالت ابتدایی یا همان php mail، از حالت پیش فرض سرور استفاده می گردد. اما نکته قابل توجه اینجاست که ارسال کننده تمایل دارد شخص گیرنده آدرس ایمیل درست مجموعه را مشاهده نماید نه آدرس سرور! بنابراین گزینه پیشنهادی بعدی یعنی SMTP های دیگر را انتخاب می کنیم.
نکته: سادگی یکی از موارد قابل توجهی است که باعث محبوبیت این افزونه شده. هر کدام از گزینه های ارائه شده در بخش ارسال کننده ایمیل را انتخاب نمایید، تنظیمات مربوط به آن نمایش داده می شود و برخی فیلدها نیز به صورت پیشفرض تکمیل شده اند.
با انتخاب حالت ارسال کننده SMTP های دیگر تنظیمات این بخش به شرح زیر خواهد بود:
- میزبان (SMTP Host): در این بخش نام دامنه خود را وارد کنید.
- رمزنگاری: در این قسمت سه مورد تحت عناوین هیچ یک و SSL و TLS ارائه شده است. همواره باید به این نکته دقت داشته باشید که ممکن است برخی گزینه ها با توجه به تنظیمات امنیتی سرور میزبان شما کارایی مناسبی نداشته باشند بر همین اساس توصیه می گردد در صورت عدم دریافت عملکرد مناسب از این بخش، تمام گزینه ها را یکبار تست نمایید. ما در این بخش TLS را انتخاب کردیم.
- پورت SMTP: در این فیلد پورت SMTP را وارد نمایید. به صورت پیشفرض پورت 587 در فیلد مربوطه درج می گردد.
- احراز هویت: به منظور درج آدرس ایمیل و معرفی آن به افزونه، دکمه احراز هویت را در حالت فعال قرار دهید. با فعال کردن بخش احراز هویت دو فیلد در پایین صفحه ظاهر می گردد.
- نام کاربری SMTP: ایمیل مربوطه جهت ارسال و دریافت را وارد کنید. (این ایمیل باید با ایمیلی که در فیلد ایمیل ارسال کننده وارد کردید یکسان باشد.)
- رمز عبور SMTP: رمز عبور ایمیل خود را وارد کنید.
حالا روی دکمه ذخیره تنظیمات در پایین صفحه کلیک کنید.
بررسی وضعیت عدم ارسال ایمیل از هاست
خب تا اینجای کار ما فقط تنظیمات اولیه و پیکربندی لازم جهت رفع مشکلات ایمیل در وردپرس را به اتمام رساندیم. برای اینکه مطمئن شویم تنظیمات به درستی اعمال شده و ایمیل ها به صورت صحیح ارسال می شوند از سربرگ آزمایش ایمیل کمک می گیریم.
- به تب آزمایش ایمیل مراجعه می کنیم. تا بررسی کنیم آیا عمل ارسال ایمیل به درستی صورت می گیرد یا خیر.
- در فیلد “ ارسال به” آدرس ایمیل دلخواهی را جهت تست و بررسی وارد نمایید.
- روی دکمه ارسال ایمیل کلیک کنید.
در صورتی که با پیغام Test plain text email was sent successfully! مواجه شدید یعنی سیستم ارسال و دریافت ایمیل عملکرد صحیحی دارد و این افزونه بدون مشکل در حال اجرا می باشد. همچنین اگر صندوق پستی خود را بررسی کنید این ایمیل آزمایشی را خواهید دید.
در صورت مواجه با There was a problem while sending the test email یعنی در ارسال ایمیل مشکلی وجود دارد. در اغلب موارد با بررسی ایمیل و رمز عبور آن مشکل رفع می گردد.در صورتی ک این افزونه موجب رفع مشکل ارسال ایمیل در وردپرس نشد، می توانید از افزونه Easy WP SMTP نیز کمک بگیرید. افزونه مذکور نسبت به WP Mail SMTP by WPForms بسیار سازگارتر می باشد.
2. افزونه Easy WP SMTP
Easy WP SMTP یکی دیگر از افزونه های بسیار محبوب و کاربری به منظور رفع مشکل ارسال نشدن ایمیل در بین وردپرس کاران است. این افزونه تاکنون توانسته بیش از 400،000 نصب فعال را با امتیار 4.3 از 5 در مخزن وردپرس به ثبت برساند. نکته مثبت و حائز اهمیت در خصوص این افزونه سازگاری آن با سرویس های مختلف می باشد البته تنظیمات آن نیز تخصصی تر می باشد.
برای نصب و پیکربندی افزونه با آموزش نحوه ورود به مدیریت وردپرس وارد سیستم مدیریت محتوای خود شوید سپس:
- روی منوی افزونه ها کلیک کنید.
- به زیر منوی افزودن مراجعه کنید.
- عبارت smtp را در فیلد افزونه ها جستجو کنید.
افزونه Easy WP SMTP را یافته روی دکمه “هم اکنون نصب کن” کنار آن کلیک کنید. پس از نصب افزونه روی دکمه “فعالسازی” که کنار آن ظاهر می شود نیز کلیک کنید.
پس از نصب و پیکربندی افزونه زیر منوی جدیدی تحت عنوان Easy WP SMTP به بخش تنظیمات پیشخوان وردپرس شما افزوده خواهد شد. روی آن کلیک کنید تا به بخش پیکربندی افزونه هدایت شوید.
نکته: اگر با نصب افزونه در وردپرس آشنایی ندارید میتونید از آموزش نحوه نصب و کار کردن با افزونه ها در وردپرس استفاده کرده و افزونه مورد نظر را نصب و فعال کنید.
تنظیمات افزونه ارسال ایمیل با smtp
حالا همانطور که در تصویر زیر و در تنظیمات افزونه Easy WP SMTP مشاهده میکنید پیکربندی هر قسمت را بر اساس توضیحاتی که در زیر ارائه شده سفارشی سازی کنید.
همانطور که پیشتر نیز ذکر شد می بایست ایمیلی در هاست خود ایجاد کنید تا عمل ارسال و دریافت بر پایه آن صورت گیرد
- From Email Address: در این فیلد آدرس ایمیل خودتون را وارد کنید.
- From Name: در این فیلد نام دلخواه خودتون را وارد کنید. این نام در ایمیلهای ارسالی به کاربران در عنوان فرستنده ایمیل نمایش داده خواهد شد.
- Reply-To Email Address Reply-To Email Address: در صورتی که تمایل دارید پاسخی از سمت کاربران خود دریافت نمایید ایمیلی را در این فیلد درج کنید. از این پس پاسخ کاربر خود را در این ایمیل مشاهده خواهید کرد.
کمی پایین تر به تنظیمات مربوط به ایمیل خود می رسیم که مطابق با توضیحات زیر باید سفارشی سازی شوند:
- SMTP Host: در این فیلد آدرس SMTP ایمیل خود را وارد کنید. به عبارت ساده تر نام دامنه خود را وارد کنید.
نکته: هر سرور ایمیل دارای یک آدرس SMTP هستش که اگر از جیمیل استفاده میکنید باید در این فیلد از آدرس smtp.gmail.com استفاده کنید. - Type of Encription: از این بخش گزینه STARTTLS را انتخاب کنید. تنظیمات این بخش به پیکربندی سرور شما بستگی دارد. در صورتی که موقع تست با خظا مواجه شدید دو مورد دیگر را هم تست کنید.
- SMTP Port: در این فیلد نیز پورت 587 برای SMTP خود را وارد کنید.
نکته: اگر قصد داشتید از اکانت جیمیل اقدام به ارسال ایمیل کنید باید پورت موجود برای جیمیل را که عدد 465 هستش وارد کنید. - SMTP Authentication: این گزینه را بر روی حالت YES قرار داده و سپس آدرس و رمز ایمیل خود را وارد کنید.
- SMTP username: در این گزینه آدرس ایمیل هاست خود را برای بررسی و استفاده از SMTP وردپرس وارد کنید.
- SMTP Password: در این گزینه هم رمز ایمیل خود را وارد کرده و تنظیمات را ذخیره کنید.
حالا تنظیمات را ذخیره کرده. به سربرگ TEST EMAIL مراجعه و یک ایمیل تست ارسال کنید.
برای ارسال ایمیل تست، در فیلد To آدرس دریافت کننده ایمیل را ارسال کنید تا ایمیل از طریق SMTP وردپرس برای اون ارسال بشه و سپس در فیلد Subject عنوان ایمیل خودتون را وارد کرده و در نهایت در فیلد Message متن ایمیل خودتون را وارد کرده و روی دکمه Send Test Email کلیک کنید.
در صورت صحیح بودن تنظیمات با پیغامی مشابه تصویر بالا مواجه خواهید شد.نکته: دقت داشته باشید در فیلد Subject به هبچ عنوان از کلماتی چون تست یا test استفاده نکنید چرا که به این صورت اسپم شناخته خواهند شد.
حالا از این پس هر ایمیلی که در وردپرس ارسال کنید از طریق SMTP و بدون هیچ گونه مشکلی ارسال خواهد شد و خیالتون هم از بابت دریافت ایمیل آسوده خواهد بود.
رفع مشکل عدم ارسال ایمیل در لوکال هاست زمپ
یکی از مشکلاتی که کاربران در هنگام طراحی سایت دارند این است که هنگام استفاده از لوکال هاست امکان ارسال ایمیل را ندارند. بنابراین استفاده از این افزونهها میتواند مشکل عدم ارسال ایمیل در لوکال هاست را برطرف کند تا سایت خود را به صورت کامل در لوکال هاست پیاده سازی کنند و در نهایت به هاست منتقل کنند. اما در برنامه لوکال هاست XAMPP مشکلی وجود دارد که با استفاده از این افزونه هم نمیتوان ایمیل ارسال کرد.
به دلیل اینکه در برنامه لوکال هاست زمپ از توابع خود php برای ارسال ایمیل استفاده میشود این توابع فقط و فقط در نسخه 32 بیتی ویندوز کار میکنند و امکان ارسال ایمیل در لوکال هاست را خواهید داشت. اما افرادی که از نسخه 64 بیتی ویندوز استفاده میکنند به این روش قادر به ارسال ایمیل در لوکال هاست نخواهند بود. بنابراین بهتر است از افزونه دیگری استفاده کنید که امکان ارسال ایمیل را به شما خواهد داد. افزونهای که برای کلیه نسخههای ویندوز در لوکال هاست امکان ارسال ایمیل را خواهد داد با نام wp mail smtp در مخزن وردپرس به ثبت رسیده است که برای استفاده از این افزونه میتونید از آموزش رفع مشکل عدم ارسال ایمیل در لوکال هاست زمپ استفاده کنید. دقت داشته باشید که برای اینکه امکان ارسال ایمیل را داشته باشید باید از حالت ارسال ایمیل با استفاده از API گوگل اقدام کنید.امیدوارم که این آموزش هم مورد توجه شما قرار گرفته باشه و با استفاده از اون تونسته باشید تا نسبت به رفع مشکل ارسال ایمیل در وردپرس و عدم ارسال ایمیل وردپرس اقدام کنید. اگر در رابطه با این آموزش سوالی داشتید و یا مشکلی در حین کار باهاش براتون به وجود اومد میتونید تا از بخش دیدگاهها مطرح کنید تا در کوتاه ترین زمان ممکن پاسخگوی شما باشم.
منبع مقاله: وبلاگ میزبان فا