نکات مهم در ارسال ایمیل HTML

4 سال و 10 ماه پیش

همون طور که میدونید که یکی از نیازهای مهم اکثر وبسایت ها ، ارسال ایمیل های روزانه به کاربراست. این ایمیل ها ممکنه با اهداف متفاوتی ارسال بشه. مثلا برای تایید عضویت ، بازیابی رمز عبور ، ارسال خبرنامه ، ارسال یادآور ( reminder ) برای کاربران و در بسیاری از موارد ایمیل های تبلیغاتی.

شما به عنوان برنامه نویس و یا وبمستر ، ممکنه بخواید این ایمیل ها رو از سرور شخصی خودتون ارسال کنید و یا به خاطر بعضی دلایل ( مثلا محدودیت هاست در ارسال ایمیل یا ترس از اسپم شناخته شدن اکانت های ایمیل دامنه تون ) از اکانت های میل سرویس هایی مثل جی میل یا یاهو استفاده کنید. در هر دو صورت مسئله ای که وجود داره اینه که ارسال ایمیل با ساختار اچ تی ام ال بر ایمیل های ساده ( اصطلاحا plain text ) ترجیح داره. چون شما می تونید بدون محدودیت به بدنه پیغامتون استایل بدید و قطعا این باعث میشه که مخاطبتون که همون دریافت کننده ایمیل باشه بیشتر تحت تاثیر قرار بگیره.

خوب حالا که تصمیم دارید ایمیل هاتون رو به صورت HTML ارسال کنید ، مهم ترین مساله ای که باید بهش توجه کنید اینه که کاربران شما به طور قطع و یقین از سرویس های ایمیل متفاوتی استفاده می کنن ، پس برای ارسال ایمیل باید اون ها رو در نظر بگیرید چرا که در ارسال ایمیل های اچ تی ام ال همیشه دو تهدید بزرگ و کلی وجود داره :

  • اسپم شناخته شدن ایمیل و رفتن ایمیل به فولدر اسپم کاربر ( تکرار این روند ممکنه حتی منجر به اسپمر شناخته شدن اکانت ایمیلتون بشه )
  • عدم سازگاری استایل های بدنه ایمیل شما با میل سرویس های مختلف و پردازش غلط اون ها و در نتیجه نمایش نامناسب و غیرصحیح ایمیل ارسالی شما به کاربر

خوب اگه اکثر مخاطبان و کاربرای شما در ایران هستند ( که غالبا هم همین طوره ) ، میتونید تمرکز خودتون رو روی این دو سرویس قرار بدید :

  • یاهو میل ( Yahoo Mail )
  • جی میل ( Gmail )

به این معنا که وقتی بدنه ایمیلتون رو تهیه کردید ، باید به صورت ویژه اون رو برای این دو میزبان تست کنید و قبل از ارسال اون ایمیل به صورت کلان ، اول از سازگاریش با این میل سرویس ها مطمئن بشید. اگر میخواید کارتون خیلی دقیق باشه میتونید سرویس هایی مثل هات میل و برخی سرویس های داخلی رو هم تو دستور کارتون قرار بدید.

خوب ، حالا برای برخورد صحیح با این دو تهدید عمده ای که ذکر کردم ، چند تا از مهمترین موارد و ملاحظاتی که وجود داره رو متذکر میشم :

 

یک فایل جدید در ادیتورتون ایجاد کنید !

قبل از هر چیز یک فایل جدید در ادیتورتون ایجاد کنید و با خیال راحت به طراحیتون بپردازید ! هدفم از ذکر این مورد این بود که از شتاب زدگی بپرهیزید . حتی اگه قصد دارید که بدنه کوتاه و چندخطی ( حتی یک خطی ! ) ایجاد کنید ، باز هم این کار رو انجام بدید و همانند طراحی یک صفحه اچ تی ام ال ، ابتدا اون رو در مرورگر های مختلف چک کنید. این رو خطاب به اون دسته از دوستانی گفتم که سعی دارن داخل همون فایل ارسال ایمیلشون ( مثلا در اسکریپت PHP ) یک دابل کوتیشن ایجاد کنند و سریع سر و ته ایمیلشون رو هم بیارن !

طراحی بدنه ایمیل را با table ها انجام بدید

درست  برخلاف طراحی صفحات وب که اکیدا توصیه میشه با استفاده از CSS به المنت ها layout داده بشه ، در طراحی بدنه ایمیل اچ تی ام ال خود باید از table ها استفاده کنید. این موضوع هم باعث سازگاری بیشتر با میل سرویس های مختلف میشه ، و هم از اسپم شناخته شدن ایمیلتان در بعضی سرویس ها جلوگیری میکنه. همچنین اگر مجبور شدید میتونید از جداول تو در تو هم استفاده کنید ( چیزی که در طراحی وب اکیدا نهی میشه ) . البته به عنوان یک اصل کلی تا اون جا که می تونید و مجبور نشدید از جداول تو در تو استفاده نکنید ، چرا که به هر حال سرعت پردازش اون به وسیله مرورگر ها پایین میاد. ولی در هر صورت استفاده از جداول تو در تو بر استفاده از عناصری مثل div برای ایجاد layout در ایمیل ها ترجیح داره.

از سی اس اس به صورت درون خطی (inline) استفاده کنید

بسیاری از میل سرویس ها از جمله جی میل ، کدهای داخل تگ <head> رو نادیده می گیرن . پس از به کار بردن سی اس اس در این تگ خود داری کنید و استایل هر المنت رو داخل همون تگ قرار بدید. این موضوع به صورت ضمنی به یه نکته دیگه در طراحی بدنه ایمیل اچ تی ام ال هم اشاره می کنه و اون اینه که استفاده از کلاس ها و آی دی ها در این زمینه کاربردی ندارن.

پس اگه قصد دارید که رنگ زمنیه رو تغییر بدید و یا مثلا فونت قلم یک المنت رو ، باید کد مربوطه رو داخل اتریبیوت style هر تگ و یا سایر اتریبیوت های المنت مورد نظر بیارید . (مثلا bgcolor در جداول)

جاوا اسکریپت ، بی جاوا اسکریپت !

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

header های لازم برای ایمیل فراموش نشوند

رعایت این مورد برای اجتناب از اسپم شدن اکیدا لازمه . هدر هایی که خیلی اهمیت دارن و باید همراه ایمیل ارسال بشن اینا هستن :

  • content-type : برای تعیین نوع محتوا و نوع کدگذاری محتوا . برای ایمیل های فارسی معمولا : content-type: text/html; charset=utf-8
  • from : در این هدر ، ارسال کننده ایمیل (همون اکانتتون) ترجیحا همرا با یک نام
  • reply-to : که مشخص می کنه پاسخ ایمیل باید به چه آدرسی ارسال بشه. البته برای ایمیل های بدون نیاز به پاسخ (no reply) ، به این مورد نیاز نیست.

نکات دیگر

  • در ارسال یک ایمیل ، تعداد دریافت کنندگان را زیاد قرار ندید (بسته به میل سرویس متفاوته ولی به نظر من حداکثر 500 نفر). اگر لازمه تعداد ایمیل ها رو افزایش بدید (مثلا 10 ایمیل ارسال کنید و در هر ایمیل 500 دریافت کننده)
  • اگه ایمیل ارسالیتون مربوط به مواردی مثل عضویته (ایمیل های رسمی) ، از ایمیل های دامنه خودتون استفاده کنید . اما گه میخواید ایمیل تبلیغاتی ارسال کنید ، حتما از اکانت های میل سرویس هایی مثل جی میل یا یاهو میل استفاده کنید.
  • در انتخاب عنوان ایمیلتون دقت زیادی داشته باشید. عنوان ایمیل برای جذب مخاطب اهمیت ویژه ای داره. سعی کنید نه خیلی کوتاه باشه نه خیلی بلند. ضمن اینکه عنوان ایمیل در اسپم شدن یا نشدن ایمیلتون هم خیلی مهمه . مثلا استفاده از علائم و symbol ها در عنوان ، اصلا گزینه خوبی نیست.
  • اگه اسم دریافت کننده ایمیلتون رو میدونید ، شاید فکر بدی نباشه که اون رو در ابتدای بدنه ایمیلتون قرار بدید . مثلا اگه اسمش علی هست ، بنویسید : سلام ، علی
  • همون طور که گفتم ، تعداد زیادی از میل سرویس ها ، تگ head رو نادیده می گیرن . پس تنها چیزی که میتونم توصیه کنم داخل این تگ قرار بدید ، تگ title هست . همرا با  یک عنوان ساده و مرتبط

تست فراموش نشه

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

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


منتظر نظرات ارزشمندتون هستم ،
بدرود ،
علی وب


ارسال ایمیلایمیل HTMLایمیل اچ تی ام الطراحی ایمیلارسال ایمیل با php

16 نظر