به نظر میرسه براتون آشناست؟ خب ما سعی میکنیم مشکلاتی بیشتر کاربرانمون ازمون میپرسن رو بصورت مقاله بنویسیم. المنتور فارسی همیشه پشتیبان شماست. در این مطلب راه حلهایی برای عدم ارسال ایمیل از طریق فرم المنتور و خطای سرور رو بررسی میکنیم.
این مشکل یک جواب کوتاه و یک جواب بلند داره اول میریم سراغ پاسخ کوتاه.
ببینید اصلا سایت وردپرسی شما ایمیل ارسال میکنه؟ یک آزمایش ساده انجام بدین مثلا یک کامنت تستی یا اینکه فراموشی رمز عبور یا استفاده از افزونه چک ایمیل در وردپرس.
چرا خطای سرور رخ میده؟
المنتور از تابع wp_mail وردپرس برای ارسال ایمیل استفاده میکنه. میزبان وب شما ایمیل ارسالی رو دریافت میکنه، پردازش میکنه و میفرسته. اینجاست که 90 درصد مسائل اتفاق میفته.
گاهی اوقات، سرورهای میزبان تابع PHP مورد استفاده برای ارسال ایمیل رو غیرفعال میکنن. یعنی در اصل ایمیلهای شما رو مسدود میکنن خیلی بده نباید بنظرم اینکار رو بدون اطلاع مدیر سایت انجام بدن.
این کار معمولاً برای اطمینان از عدم ارسال هرزنامه از طریق سایت انجام میشه، چون معمولا سرورهایی که میخریم اشتراکی هست نمیخوان مشکلی پیش بیاد.
به زبان فنی – تابع wp_mail به طور پیش فرض از تابع send_mail PHP استفاده میکنه وقتی هم که اون تابع در سرور غیرفعال باشه، ارسال ایمیل ناموفقه. برای حل این مشکل یا با سرویس میزبانی خودتون تماس بگیرین و ازشون بخواین که سرویس ایمیل سایت شما رو فعال کنن یا به جای اون از سرور SMTP استفاده کنید.
SMTP چیست؟
SMTP مخفف «پروتکل انتقال ایمیل ساده» ست. SMTP یک سرور ایمیله که ایمیل شما رو به صورت فرم به صندوق ورودی مشتریان لیست شده شما هدایت میکنه. یک سرور ایمیل خارجیه (به عنوان مثال Gmail میتونه به عنوان سرور SMTP استفاده بشه) که به شما اطمینان میده ایمیل های شما سریعتر تحویل میشن و اسپم نمیشن. میتونین از افزونه های SMTP استفاده کنین.
اگه تا اینجا مشکل حل نشد یعنی موضوع ارسال ایمیل نبوده بریم سراغ مراحل بعدی.
نکات بیشتر برای حل خطای فرم و ارسال ایمیل
بریم سراغ چند نکته که ممکنه مشکل خطای فرم المنتور از این موارد باشه.
- آدرس ایمیل فرم باید از همون دامنه وبسایت شما باشه مثلا اگه سایتتون Example.com هست آدرس ایمیل باید Info@Example.com یا Email@Example.com یا غیره باشه. در فیلد Reply-to هم میتونین آدرس ایمیل بازدید کننده رو برای جواب به درخواستش وارد کنید.
- برای اطمینان از اینکه المنتور فرم رو ارسال میکنه یا نه میتونین افزونه Elementor Contact Form DB رو نصب کنید، که یک پایگاه داده داره و فرمهای ارسال شده رو ذخیره میکنه. یک فرم ارسال کنین بعد به داشبورد وردرستون برین و در گزینه مربوط به این افزونه ببینین فرم در پایگاه داده ش ثبت شده یا نه.
- از یک ایمیل دیگه استفاده کنید شاید این ایمیل شما به هردلیل بصورت هرزنامه ثبت شده باشه.
- اگر از یک افزونه ثالث برای ایمیل مثل میل چیمپ استفاده میکنین و با فرمتون ادغام کردین بطور موقت غیرفعال کنین و ببینین مشکل حل شده یانه. اگر مشکل به این دلیل بود باید بررسی کنین که تنظیمات فرم و میل چیمپ رو درست انجام داده باشین.
- اگر برگه شما بعد از ارسال هر فرم رفرش میشه، ممکنه مشکل از تداخل یک افزونه باشه، همه افزونه ها غیر از المنتور و المنتور پرو رو غیر فعال کنین ببینین مشکل حل میشه یا نه. اگر حل نشد برین سراغ ناسازگاری قالب. از یک قالب پیشفرض وردپرس استفاده کنین و ببینین اوضاع چطوره.
- در هر فیلد فرم المنتور، یک تب پیشرفته داریم، اطمینان حاصل کنید که در این تب برای هر فیلد یک شناسه وارد شده باشه.
- با دوباره در همین قسمت یک شرت کد داریم، این شرت کد رو هم دقت کنید که هم پر شده باشه، هم صحیح باشه.
نظرات و پیشنهادات شما دلگرم کننده راه ماست.
11 پاسخ
سلام. من در یک پاپ آپ از فرم استفاده کردم که میخوام مشخصات کاربر مثل نام و شماره همراه رو دریافت کنم. اما در قسمت submission المنتور و حتی افزونه elementor contact form db جلوی قسمت تلفن و نام خالیه و چیزی نمایش نمیده. علت چی هست؟
جلسه 32 و 33 آموزش المنتور ما رو ببینید.
سلام فرم المنتور ارسال میشه ولی در اسپم ها هست چگونه در اینجا قرار نگیره ؟ با ایمیل دیگه هم ارسال کردم
درست نشد. ممنون میشم جواب بدین
درود بر شما، ممکنه مربوط به هاستتون باشه. بهشون اطلاع بدید.
سلام راحیل جان. ببخشید هنوز کامنتم تموم نشده بود دستم خورد و ارسال شد.ادامه اش رو توی این کامنت مینویسم.ببخشید اگر کامنتم طولانی میشه.
من برای رفع مشکل ارسال نشدن فرم های المنتور افزونه wp mail smtp رونصب کردم و به سرویس جیمیل وصل کردم الان اطلاعات فرمهای المنتور برام ایمیل میشه ولی یه مسئله ای هست اونم اینه که من میخوام آدرس ایمیل ارسال کننده ایمیل هاستم باشه. و از طرفی وقتی این ایمیل پاسخ داده میشه به ایمیلی که کاربر در فرم وارد کرده ارسال بشه ولی پاسخ هم به ایمیل خودم بر میگرده.
یه سوال دیگه هم داشتم اینکه من افزونه smtp mailer رو برای رفع مشکل ارسال ایمیل قبلا نصب کردم.(طبق جوابی که از هاست برای رفع مشکل ارسال ایمیل دریافت کردم) الان این دوتا افزونه با همدیگه تداخل ندارند؟
ممنون میشم از اینکه منو راهنمایی کنید.
تداخل ندارند و اون تنظیمات هم باید در فرم المنتور انجام بدید.
من سایتهایی دیگه ای هم روی این هاست دارم که از افزونه smtp mailer استفاده کردم و مشکل ارسال نشدن فرم های المنتور و برگه های فراموشی رمز حل شد.
اما توی سایت خودم که فقط یه فرم تماس دارم این افزونه کار نکرد و من افزونه wp mail smtp رونصب کردم و به سرویس جیمیل وصل کردم.
برام جالب بود چرا اون افزونه که هاست معرفی کرد توی سایت خودم جواب نداد.؛
در صورتی که هر دوی این سایتها از یه هاست استفاده می کنند.
جدیدا زمان ارسال فرم های فراموشی رمز عبور سایت با پیغام (خطا: ایمیل نمیتواند فرستاده شود. شاید سایت شما برای ارسال ایمیل به درستی پیکربندی نشده است.)روبرو میشدم. و همینطور زمان ارسال فرمهایی که با المنتور طراحی شده هم با پیغام (خطای سرور فرم ارسال نشد) روبرو میشدم.وایمیل های سایت ارسال نمی شد. به پشتیبانی هاست تیکت دادم به من گفتن که 🙁 بنا به جلوگیری از ارسال اسپم، تابع mail در سرویس ها بسته شده ست و به همین دلیل میبایست ازsmtp استفاده نمایید لطفاجهت دریافت و ارسال ایمیل از افزونه smtp mailer استفاده نمایید.)
خب من افزونه smtp mailer نصب و تنظیم کردم.مشکل فرمهای فراموشی حل شد ولی فرمهایی که با المنتور طراحی شده بود همچنان ارسال نمیشه و همون پیغام خطای سرور فرم ارسال نشد رو میده
درود بر شما،
من فکر میکنم مشکل از هاستتون باشه. هاست بهیچوجه نباید سرویس ایمیل رو ببنده.
اگر مشکل از هاست نباشه قسمت نکات بیشتر در همین مطلب رو بررسی کنید.
سلام خانم دست پیمان ببخشید این مشکل برای منم پیش اومده من روی لوکال هاستم و ارور Server error. Form not sent. میده به نظرتون بخاطره لوکال هاسته روی بخش فرم هر فرمی ارسال میکنم به این ارور رو میده مشکل از چیه اینترنتمم روشن به نظرتون مشکل از لوکال هاسته ؟؟؟
درود بر شما،
بطور قطعی نمیتونم بگم. اما بطور کلی لوکال خطاهایی میده که هاست اصلی اون خطاها رو نداره برای همین ما لوکال رو توصیه نمیکنیم.