Shop Categories:

วิธีตั้งค่า WP Mail SMTP ด้วย Gmail API ผ่าน Google Cloud Console แบบละเอียด
Share:

Share:

หากคุณใช้งาน WordPress แล้วพบปัญหาเว็บไซต์ส่งอีเมลไม่ได้ ไม่ว่าจะเป็นอีเมลแจ้งเตือนจากแบบฟอร์มติดต่อ อีเมลสมัครสมาชิก หรืออีเมลยืนยันคำสั่งซื้อจาก WooCommerce ปัญหาเหล่านี้อาจเกิดจากระบบส่งอีเมลของเซิร์ฟเวอร์ที่ไม่ได้รับการตั้งค่าอย่างเหมาะสม
หนึ่งในวิธีแก้ไขคือการใช้ปลั๊กอิน WP Mail SMTP เชื่อมต่อกับ Gmail API ผ่าน Google Cloud Console เพื่อให้เว็บไซต์ WordPress สามารถส่งอีเมลโดยใช้บัญชี Google ได้อย่างปลอดภัยผ่านระบบ OAuth 2.0
บทความนี้ VarietyPC.net จะพาไปตั้งค่า WP Mail SMTP ตั้งแต่การติดตั้งปลั๊กอิน การเปิดใช้งาน Gmail API การสร้าง OAuth Client ID และ Client Secret ไปจนถึงการทดสอบส่งอีเมลจริง โดยใช้วิธีตั้งค่าด้วยตนเองที่สามารถทำได้กับปลั๊กอินรุ่นฟรี
WP Mail SMTP เป็นปลั๊กอิน WordPress ที่ช่วยกำหนดวิธีส่งอีเมลออกจากเว็บไซต์ผ่านผู้ให้บริการอีเมล เช่น Gmail, Google Workspace และบริการส่งอีเมลอื่น ๆ แทนการพึ่งพาระบบส่งอีเมลเริ่มต้นของเซิร์ฟเวอร์เพียงอย่างเดียว
โดยทั่วไป WordPress สามารถเรียกใช้ฟังก์ชัน wp_mail() เพื่อส่งอีเมลได้ แต่การส่งสำเร็จจากฝั่งเว็บไซต์ไม่ได้หมายความว่าอีเมลจะถึงกล่องจดหมายของผู้รับเสมอไป
การเชื่อมต่อผ่าน Gmail API ช่วยให้เว็บไซต์ยืนยันตัวตนกับ Google ผ่าน OAuth 2.0 โดยไม่จำเป็นต้องนำรหัสผ่านบัญชี Gmail มาใส่ในปลั๊กอินโดยตรง
ตัวอย่างการใช้งาน ได้แก่
อย่างไรก็ตาม การตั้งค่า WP Mail SMTP ไม่ได้เป็นการรับประกันว่าอีเมลทุกฉบับจะเข้าสู่ Inbox เพราะผลการจัดส่งยังขึ้นอยู่กับชื่อเสียงผู้ส่ง ระบบกรองสแปม และการตั้งค่าการยืนยันตัวตนของโดเมนด้วย
ก่อนเริ่มดำเนินการ ควรเตรียมสิ่งต่อไปนี้ให้พร้อม
ในบทความนี้จะใช้วิธีตั้งค่าผ่าน Google Cloud Console โดยสร้าง Google Cloud Project และ OAuth Credentials ด้วยตนเอง จึงไม่จำเป็นต้องใช้ฟีเจอร์ One-Click Setup ของ WP Mail SMTP Pro

เริ่มจากเข้าสู่ระบบ WordPress Dashboard แล้วไปที่เมนู Plugins > Add New Plugin
ค้นหาคำว่า WP Mail SMTP จากนั้นเลือกปลั๊กอิน WP Mail SMTP by WPForms แล้วกด Install Now และ Activate

เมื่อติดตั้งเรียบร้อยแล้ว ให้ไปที่เมนู WP Mail SMTP > Settings > General
ในหน้านี้จะพบตัวเลือกสำหรับกำหนดข้อมูลผู้ส่งและบริการส่งอีเมล
กำหนดข้อมูลดังนี้
ตัวอย่าง หากชื่อเว็บไซต์เป็น VarietyPC.net อาจกำหนด From Name เป็น VarietyPC.net
สำหรับกรณีที่ต้องการใช้อีเมล Alias หลายที่อยู่ ควรตรวจสอบการตั้งค่า Force From Email ให้เหมาะสมก่อนเปิดใช้งาน
เลื่อนลงมาที่ส่วน Mailer แล้วเลือก Google / Gmail
ระบบจะแสดงช่องสำหรับใส่ Client ID และ Client Secret ซึ่งเราจะสร้างจาก Google Cloud Console ในขั้นตอนต่อไป

เปิดเว็บไซต์ https://console.cloud.google.com/ แล้วเข้าสู่ระบบด้วยบัญชี Google ที่ต้องการนำมาใช้งาน

หากเป็นการใช้งานครั้งแรก Google อาจแสดงหน้าต่างให้ยอมรับข้อกำหนดการใช้บริการก่อนเข้าสู่ระบบ
หลังจากเข้าสู่ Google Cloud Console ให้คลิกตัวเลือกโปรเจกต์บริเวณด้านบนของหน้าจอ แล้วเลือก New Project

ตั้งชื่อโปรเจกต์ เช่น WordPress Gmail SMTP
หากใช้บัญชี Google Workspace อาจต้องเลือก Organization หรือ Location ตามสิทธิ์ที่ได้รับจากผู้ดูแลระบบ
จากนั้นกด Create เพื่อสร้างโปรเจกต์ใหม่

เมื่อสร้างสำเร็จแล้ว ให้ตรวจสอบว่าได้เลือกโปรเจกต์ใหม่เป็นโปรเจกต์ปัจจุบันก่อนดำเนินการต่อ
หลังจากสร้างโปรเจกต์แล้ว ให้เข้าไปที่เมนู APIs & Services > Library
ค้นหาคำว่า Gmail API แล้วคลิกผลการค้นหาของ Gmail API

จากนั้นคลิกปุ่ม Enable เพื่อเปิดใช้งาน API ให้กับโปรเจกต์

Gmail API เป็นช่องทางที่ทำให้แอปพลิเคชันสามารถเรียกใช้บริการ Gmail ได้ตามสิทธิ์ที่เจ้าของบัญชีอนุญาต
เมื่อเปิดใช้งาน API เรียบร้อยแล้ว เราจะดำเนินการตั้งค่า OAuth สำหรับเชื่อมต่อ WordPress กับบัญชี Google ต่อไป
OAuth Consent Screen คือหน้าจอที่ Google ใช้แสดงข้อมูลแอปพลิเคชันและขอความยินยอมจากเจ้าของบัญชีก่อนอนุญาตให้เว็บไซต์เข้าถึงบริการ Google
ใน Google Cloud Console ให้เปิดเมนู Google Auth Platform หรือ APIs & Services > OAuth consent screen ตามรูปแบบหน้า Console ที่แสดง
หากปรากฏปุ่ม Get Started ให้คลิกเพื่อเริ่มกำหนดค่า
กรอกข้อมูลพื้นฐาน เช่น
บัญชี Google Workspace อาจมีตัวเลือก Internal สำหรับแอปที่อนุญาตเฉพาะผู้ใช้ภายในองค์กร จึงควรเลือกประเภทผู้ใช้งานตามลักษณะบัญชีจริง

หากมีขั้นตอนกำหนด Data Access หรือ Scopes เพิ่มเติม ให้ตรวจสอบสิทธิ์ที่แอปต้องการใช้งาน โดยให้สิทธิ์เฉพาะส่วนที่จำเป็นต่อการส่งอีเมลผ่าน Gmail API
เมื่อกรอกข้อมูลครบแล้ว ให้บันทึกการตั้งค่า
ไปที่เมนู Google Auth Platform > Clients หรือหน้า Credentials ของ Google Cloud Console แล้วเลือก Create Client
กำหนด Application type เป็น Web application
ตั้งชื่อ Client เช่น WordPress SMTP Client

จากนั้นเลื่อนลงมาที่หัวข้อ Authorized redirect URIs แล้วคลิก Add URI
สำหรับการตั้งค่าเริ่มต้นของ WP Mail SMTP ให้ใช้ URL ต่อไปนี้
แนะนำให้คัดลอก Authorized redirect URI จากหน้าตั้งค่าของ WP Mail SMTP โดยตรง เพื่อให้ URL ตรงกับค่าที่ปลั๊กอินใช้งานจริง

ข้อควรระวัง: ต้องใส่ URL ในช่อง Authorized redirect URIs ไม่ใช่ Authorized JavaScript origins และต้องตรวจสอบตัวอักษร รวมถึงเครื่องหมาย / ท้าย URL ให้ตรงกันทั้งหมด
คลิก Create เพื่อสร้าง OAuth Client
จากนั้นเปิดรายละเอียดของ Client ที่สร้างขึ้น แล้วคัดลอกข้อมูลสำคัญสองรายการ ได้แก่
ควรเก็บ Client Secret เป็นความลับ และไม่เผยแพร่รหัสจริงในบทความ ภาพหน้าจอ หรือไฟล์ที่บุคคลอื่นเข้าถึงได้
ขั้นตอนนี้สำคัญอย่างยิ่งสำหรับผู้ที่ต้องการใช้งานระบบส่งอีเมลอย่างต่อเนื่อง
เข้าสู่ Google Auth Platform > Audience แล้วตรวจสอบ Publishing status ของแอป
หากเป็นบัญชี Gmail ทั่วไปและสถานะแสดงเป็น Testing ให้เลือก Publish App และยืนยันการเปลี่ยนสถานะตามขั้นตอนที่ Google แสดง
เพราะหากแอปยังอยู่ใน Testing การอนุญาตใช้งาน OAuth ที่ขอสิทธิ์เกินกว่าข้อมูลโปรไฟล์พื้นฐานอาจหมดอายุภายใน 7 วัน ทำให้ WP Mail SMTP หยุดส่งอีเมลได้
สำหรับ Google Workspace ที่ตั้งค่า Audience เป็น Internal และใช้งานเฉพาะคนภายในองค์กร อาจมีข้อกำหนดแตกต่างออกไป
หมายเหตุ: การเปลี่ยนสถานะเป็น Production ไม่ได้หมายความว่าแอปผ่านการยืนยันจาก Google แล้วเสมอไป บางกรณีอาจยังปรากฏหน้าจอเตือนแอปไม่ได้รับการยืนยัน หรือจำเป็นต้องเข้าสู่กระบวนการตรวจสอบเพิ่มเติมตามประเภทสิทธิ์และผู้ใช้ของแอป
กลับไปที่ WordPress Dashboard แล้วเข้าเมนู WP Mail SMTP > Settings > General
เลื่อนลงมาที่ส่วน Google / Gmail จากนั้นนำข้อมูลจาก Google Cloud Console มาใส่ในช่องต่อไปนี้

หลังกรอกข้อมูลเรียบร้อยแล้ว ให้คลิก Save Settings
จากนั้นคลิกปุ่ม Allow plugin to send emails using your Google account
ระบบจะพาไปยังหน้าลงชื่อเข้าใช้ของ Google เพื่อขอสิทธิ์เชื่อมต่อบัญชี
เลือกบัญชี Gmail หรือ Google Workspace ที่ต้องการใช้งาน แล้วตรวจสอบรายการสิทธิ์ที่แอปร้องขออย่างละเอียด

หากแน่ใจว่าเป็นแอปที่คุณสร้างเองและสิทธิ์ตรงตามวัตถุประสงค์ ให้ดำเนินการอนุญาตตามขั้นตอน
เมื่อเชื่อมต่อสำเร็จ Google จะนำกลับมายังหน้าตั้งค่า WP Mail SMTP พร้อมแสดงสถานะการเชื่อมต่อ
หลังจากเชื่อมต่อ Gmail API เรียบร้อยแล้ว เราควรตรวจสอบว่าระบบส่งอีเมลสามารถทำงานได้จริง
ไปที่เมนู WP Mail SMTP > Tools > Email Test
ในช่อง Send To ให้กรอกอีเมลปลายทางที่สามารถเปิดตรวจสอบกล่องจดหมายได้
จากนั้นคลิก Send Email

หากระบบทำงานถูกต้อง จะปรากฏข้อความแจ้งว่าส่งอีเมลทดสอบสำเร็จ
ให้เปิดกล่องจดหมายของผู้รับเพื่อตรวจสอบว่ามีอีเมลเข้ามาจริงหรือไม่ รวมทั้งตรวจสอบโฟลเดอร์ Spam หรือ Junk หากไม่พบใน Inbox

สำหรับเว็บไซต์ WooCommerce แนะนำให้ทดสอบอีเมลแจ้งเตือนจากคำสั่งซื้อจริงในระบบทดสอบเพิ่มเติม เพราะอีเมลทดสอบของปลั๊กอินเพียงอย่างเดียวไม่สามารถยืนยันการทำงานของอีเมลทุกประเภทได้
แม้จะตั้งค่าตามขั้นตอนครบแล้ว แต่บางเว็บไซต์อาจพบข้อผิดพลาดในการเชื่อมต่อ ซึ่งสามารถตรวจสอบได้จากข้อความ Error ที่ปรากฏ
ปัญหานี้เกิดขึ้นเมื่อ Authorized redirect URI ใน Google Cloud Console ไม่ตรงกับ URI ที่ WP Mail SMTP ใช้งาน
วิธีแก้ไขคือกลับไปตรวจสอบ OAuth Client และคัดลอก Redirect URI จากหน้าตั้งค่าของปลั๊กอินมาใส่ใหม่ให้ตรงกันทุกตัวอักษร
ข้อผิดพลาดนี้อาจเกิดจาก Client ID หรือ Client Secret ไม่ถูกต้อง หรือมีข้อมูลส่วนเกินขณะคัดลอก
ให้ตรวจสอบค่าทั้งสองจาก Google Cloud Console และลองบันทึกใหม่อีกครั้ง
สาเหตุหนึ่งคือแอปยังอยู่ในสถานะ Testing และบัญชีที่พยายามเชื่อมต่อไม่มีสิทธิ์ใช้งาน
ให้ตรวจสอบ Audience, Publishing status และรายชื่อ Test users ตามกรณี
ข้อผิดพลาดนี้อาจเกี่ยวข้องกับ OAuth Token ที่หมดอายุ ถูกเพิกถอน หรือข้อมูลสำหรับยืนยันตัวตนไม่ถูกต้อง
ควรตรวจสอบสถานะของแอปใน Google Cloud Console แล้วเชื่อมต่อบัญชี Google ใหม่ตามขั้นตอนของ WP Mail SMTP
หากระบบหยุดทำงานทุก ๆ 7 วัน ควรตรวจสอบเป็นพิเศษว่าแอปยังอยู่ใน Testing หรือไม่
กรณีนี้อาจเกี่ยวข้องกับระบบกรองสแปม การยืนยันตัวตนของโดเมน หรือข้อจำกัดของบัญชีผู้ส่ง
ให้ตรวจสอบ Inbox, Spam, ที่อยู่ผู้รับ และสถานะการจัดส่ง พร้อมตรวจสอบ SPF, DKIM และ DMARC หากใช้ Google Workspace ส่งอีเมลด้วยโดเมนของตนเอง
ทั้งนี้ ควรตรวจสอบบันทึกการทำงานและส่วนหัวอีเมลเพิ่มเติมก่อนสรุปสาเหตุ
ได้ โดยสามารถตั้งค่า Google / Gmail Mailer แบบ Manual ผ่าน Google Cloud Console เพื่อสร้าง Client ID และ Client Secret เอง ส่วน One-Click Setup เป็นฟีเจอร์สำหรับ WP Mail SMTP Pro ขึ้นไป
การสร้างโปรเจกต์และตั้งค่า OAuth ไม่ได้หมายความว่าจะมีค่าบริการโดยอัตโนมัติ แต่การใช้บริการ Google Cloud อื่น ๆ อาจมีค่าใช้จ่ายตามเงื่อนไขของแต่ละบริการ ควรตรวจสอบ Billing และ Quota ก่อนใช้งานจริง
ได้ สำหรับเว็บไซต์ขนาดเล็กหรือเว็บไซต์ที่มีจำนวนอีเมลส่งออกไม่มาก แต่ต้องคำนึงถึงข้อจำกัดการส่งอีเมลและนโยบายของ Gmail ด้วย
การตั้งค่าผ่าน Google / Gmail Mailer ด้วย OAuth 2.0 ไม่จำเป็นต้องกรอกรหัสผ่าน Gmail ลงในปลั๊กอินโดยตรง แต่เจ้าของบัญชีต้องลงชื่อเข้าใช้ Google และอนุญาตสิทธิ์ที่เกี่ยวข้อง
ไม่สามารถรับประกันได้ เนื่องจากระบบกรองสแปมยังพิจารณาปัจจัยอื่น เช่น ชื่อเสียงของผู้ส่ง เนื้อหาอีเมล และการยืนยันตัวตนของโดเมน
การเปลี่ยนรหัสผ่านอาจทำให้การเชื่อมต่อเดิมใช้งานไม่ได้ ควรตรวจสอบสถานะการเชื่อมต่อและทำ OAuth Authorization ใหม่หากปลั๊กอินแจ้งข้อผิดพลาด
การตั้งค่า WP Mail SMTP ด้วย Gmail API ผ่าน Google Cloud Console เป็นอีกวิธีหนึ่งในการช่วยปรับปรุงความน่าเชื่อถือของระบบส่งอีเมลบน WordPress โดยใช้ OAuth 2.0 เพื่อเชื่อมต่อเว็บไซต์เข้ากับบัญชี Google อย่างปลอดภัย
แม้ขั้นตอนจะประกอบด้วยการสร้าง Google Cloud Project เปิดใช้งาน Gmail API และกำหนด OAuth Credentials แต่เมื่อดำเนินการเสร็จเรียบร้อยแล้ว เว็บไซต์จะสามารถส่งอีเมลผ่านบัญชี Gmail หรือ Google Workspace ที่เชื่อมต่อไว้ได้ ภายใต้ข้อจำกัดการใช้งานของ Google
สำหรับเว็บไซต์ที่มีระบบสมาชิก ร้านค้า WooCommerce หรือแบบฟอร์มติดต่อ ควรทดสอบการส่งอีเมลแต่ละประเภทและตรวจสอบสถานะการเชื่อมต่อเป็นระยะ เพื่อให้ระบบแจ้งเตือนทำงานได้อย่างต่อเนื่อง
หากพบปัญหาหรือข้อผิดพลาดระหว่างการตั้งค่า สามารถนำข้อความ Error มาตรวจสอบเทียบกับหัวข้อวิธีแก้ปัญหาที่อธิบายไว้ในบทความนี้ได้
สำหรับบทความนี้ เราใช้ WP Mail SMTP เวอร์ชั่น 4.10.2 ในการทดสอบ ณ วันที่ 11 ตุลาคม 2026
ข้อมูลอ้างอิง WP Mail SMTP Documentation และ Google Auth Platform