วิธีแปล Ninja Forms ใน WordPress – ฟอร์มแบบหลายขั้นตอน การดำเนินการผ่านอีเมล และการดำเนินการผสานการทำงาน
เรียนรู้วิธีแปลทุกส่วนของฟอร์ม Ninja Forms บนเว็บไซต์ WordPress ของคุณให้เป็นทุกภาษาที่ผู้เยี่ยมชมของคุณใช้ คู่มือนี้ครอบคลุมถึงฟิลด์ การนำทางแบบหลายขั้นตอน (Multi-Step) เค้าโครงและสไตล์ (Layout & Styles) ฟิลด์เลือกรูปภาพ (Image Select Fields) การตรวจสอบความถูกต้องของแต่ละฟิลด์ (per-field validation) การดำเนินการข้อความแสดงความสำเร็จ (Success Message Action) การดำเนินการเปลี่ยนเส้นทางหลังการส่ง (Submission Redirect Action) ข้อความในการดำเนินการผ่านอีเมล (Email Action) และการดำเนินการผสานการทำงานทุกรูปแบบที่ Ninja Forms รองรับ โดยจะแนะนำคุณตลอดขั้นตอนการทำงานของ Ninja Forms ร่วมกับ WPML และส่วนเสริม Ninja Forms Multilingual
ก่อนที่คุณจะเริ่มต้น
ติดตั้งและเปิดใช้งานปลั๊กอินเหล่านี้:
- Ninja Forms
- WPML และ WPML การแปลสตริง
- Ninja Forms Multilingual (ส่วนเสริมที่ครอบคลุมในหน้านี้)
สร้างฟอร์มใน Ninja Forms ด้วยภาษาต้นทางของเว็บไซต์คุณ รวมถึงโครงสร้างแบบหลายขั้นตอน (Multi-Step) ตรรกะแบบมีเงื่อนไข (Conditional Logic) ข้อความการตรวจสอบความถูกต้อง และการดำเนินการ (Actions) ที่คุณต้องการ (ข้อความแสดงความสำเร็จ การเปลี่ยนเส้นทางหลังการส่ง อีเมล การดำเนินการผสานการทำงาน) ส่งฟอร์มไปแปลหลังจากที่ฟอร์มทำงานได้อย่างสมบูรณ์แล้ว
แปลทุกอย่างโดยอัตโนมัติจะจัดการเรื่องนี้ให้คุณ
หากเว็บไซต์ของคุณเปิดใช้งาน แปลทุกอย่างโดยอัตโนมัติ คุณไม่จำเป็นต้องส่งฟอร์มเพื่อแปลด้วยตนเอง WPML จะดึงฟอร์มใหม่และฟอร์มที่อัปเดตไปพร้อมกับเนื้อหาที่เหลือของคุณและแปลอยู่เบื้องหลัง ขั้นตอนการแทรกลงในหน้าเว็บด้านล่างยังคงนำมาใช้ แต่ขั้นตอนการส่งฟอร์มเพื่อแปลจะเป็นไปโดยอัตโนมัติ เนื้อหาส่วนที่เหลือในหน้านี้จะอธิบายถึงวิธีการทำด้วยตนเองสำหรับเว็บไซต์ที่ใช้ แปลบางส่วน: คุณเลือกสิ่งที่จะแปล (หรือสำหรับฟอร์มที่คุณต้องการแปลก่อนคิวอัตโนมัติ)
ส่งฟอร์มเพื่อแปล
- ไปที่ WPML > การแปล > แดชบอร์ด
- ขยายส่วน Ninja Forms
- ทำเครื่องหมายที่ฟอร์มที่คุณต้องการแปล
- เลือกวิธีการแปล: PTC (แนะนำ), นักแปลของคุณ หรือ แปลด้วยตัวเอง
- คลิก แปล
ฟิลด์ ตัวเลือก การดำเนินการ (ข้อความแสดงความสำเร็จ อีเมล การเปลี่ยนเส้นทางหลังการส่ง การผสานการทำงาน) และข้อความการตรวจสอบความถูกต้องของแต่ละฟิลด์ทั้งหมดจะรวมอยู่ในงานแปลเดียวกัน
แทรกฟอร์มลงในหน้าที่แปลแล้วของคุณ
Ninja Forms จะอยู่ภายในหน้าหรือโพสต์ โดยปกติจะผ่าน บล็อก Ninja Forms หรือ shortcode [ninja_form id="X"] กฎการแทรกสำหรับหลายภาษาคือ:
ใช้บล็อกหรือ shortcode เดียวกันในหน้าเว็บของทุกเวอร์ชันภาษา อย่าสร้างฟอร์มแยกต่างหากสำหรับแต่ละภาษา
ขั้นตอนการทำงาน:
- สร้างฟอร์มเพียงครั้งเดียวในภาษาต้นทางของคุณ
- ส่งฟอร์มเพื่อแปล (หรือปล่อยให้ แปลทุกอย่างโดยอัตโนมัติ จัดการ)
- แทรกฟอร์มลงในหน้าภาษาต้นทางโดยใช้บล็อก Ninja Forms หรือ shortcode
[ninja_form] - แปลหน้าเว็บผ่าน WPML > การแปล > แดชบอร์ด ด้วยวิธีเดียวกับที่คุณใช้แปลหน้าอื่น ๆ การฝังฟอร์มจะยังคงอยู่ในหน้าที่แปลแล้ว
- เมื่อผู้เยี่ยมชมเปิดหน้าที่แปลแล้ว Ninja Forms Multilingual จะแสดงฟอร์มในภาษาของผู้เยี่ยมชมโดยอัตโนมัติ – ด้วย ID ฟอร์มเดียวกัน shortcode เดียวกัน และเนื้อหาที่แปลแล้ว
คุณไม่จำเป็นต้องใช้ ID ฟอร์มที่แตกต่างกันสำหรับแต่ละภาษา คำแปลจะเชื่อมโยงกับฟอร์มต้นทาง Ninja Forms Multilingual จะเลือกเวอร์ชันภาษาที่ถูกต้องในขณะที่แสดงผล
ข้อยกเว้น – เมื่อคุณต้องการฟอร์มที่แตกต่างกันในแต่ละภาษาอย่างแท้จริง หากคุณต้องการฟอร์มที่มีโครงสร้างแตกต่างกันในแต่ละภาษา (ฟิลด์ต่างกัน การดำเนินการต่างกัน ตรรกะต่างกัน) ให้สร้าง Ninja Forms แยกกัน (หนึ่งฟอร์มต่อภาษา) และแทรกชอร์ตโค้ดของแต่ละฟอร์มลงในหน้าเว็บเวอร์ชันภาษาที่ตรงกันโดยใช้ตัวแก้ไข WordPress สำหรับการแปลนั้น นั่นเป็นสถานการณ์เดียวที่ชอร์ตโค้ดจะแตกต่างกันในแต่ละภาษา
ข้อควรระวังสำหรับปลั๊กอินสร้างหน้าเว็บ
หากหน้าเว็บของคุณสร้างด้วย Divi, Elementor หรือปลั๊กอินสร้างหน้าเว็บอื่น ๆ ที่ครอบ shortcode ไว้ในโมดูลข้อความของตัวเอง shortcode อาจไม่ถูกส่งผ่านไปยังการแปลอย่างสมบูรณ์เสมอไป หากหน้าที่แปลแล้วแสดงฟอร์มในภาษาต้นทาง ให้เปิดหน้าที่แปลแล้วในปลั๊กอินสร้างหน้าเว็บ และแทรกบล็อกหรือ shortcode ของฟอร์มเข้าไปใหม่ที่นั่น ตัวแก้ไขบล็อกและตัวแก้ไขแบบคลาสสิกดั้งเดิมของ WordPress จะไม่มีปัญหานี้
ป้ายกำกับฟิลด์และประเภทฟิลด์
ป้ายกำกับฟิลด์ ข้อความตัวแทน (placeholder) และตัวเลือกของ Ninja Forms ทุกรายการจะปรากฏในงานแปล แคตตาล็อกฟิลด์ทั้งหมดสามารถแปลได้: ข้อความ ย่อหน้า ชื่อ อีเมล ที่อยู่ โทรศัพท์ รายการ (เลือก ปุ่มตัวเลือก ช่องทำเครื่องหมาย เลือกหลายรายการ) ตัวเลข วันที่/เวลา อัปโหลดไฟล์ ส่ง
ฟิลด์แบบทำซ้ำ (Repeater Fields) จะแปลในระดับแถว: ป้ายกำกับปุ่มเพิ่มแถวและป้ายกำกับฟิลด์ของแต่ละแถวจะอยู่ในงานแปล นักแปลจะเห็นโครงสร้าง Repeater ที่สมบูรณ์ โดยป้ายกำกับของแต่ละฟิลด์ย่อยจะเป็นแถวที่สามารถแปลได้
ฟิลด์เลือกรูปภาพ
ฟิลด์เลือกรูปภาพจะจับคู่ภาพขนาดย่อกับป้ายกำกับข้อความ Ninja Forms Multilingual จะแปลป้ายกำกับตามแต่ละภาษาในขณะที่รูปภาพยังคงใช้ร่วมกัน ตัวเลือกแบบรูปภาพจะทำงานเหมือนกันในทุกภาษา โดยจะแปลเฉพาะคำบรรยายภาพเท่านั้น
ฟอร์มแบบหลายขั้นตอน
สำหรับฟอร์มแบบหลายขั้นตอน หัวข้อของแต่ละขั้นตอนและปุ่มนำทางในแต่ละขั้นตอน (Previous, Next, Submit) จะแปลเป็นแถวของตัวเอง ตรรกะแบบมีเงื่อนไข (Conditional Logic) ในแต่ละขั้นตอนจะยังคงอยู่หลังจากการแปล การจับคู่ค่าจะรักษาค่าตัวเลือกพื้นฐานให้สอดคล้องกันในทุกภาษา
หลังจากการแปล ให้ทดสอบขั้นตอนการทำงานแบบหลายขั้นตอนในแต่ละภาษา เพื่อยืนยันว่าการนำทางอ่านได้เป็นธรรมชาติและเงื่อนไขการแยกสาขายังคงทำงานในขั้นตอนที่ถูกต้อง
เค้าโครงและสไตล์
ผลลัพธ์จากตัวออกแบบเค้าโครงและสไตล์ของ Ninja จะถูกแปลโดยไม่สูญเสียเค้าโครง เส้นตาราง คอลัมน์ และสไตล์การแสดงผลจะยังคงอยู่ มีเพียงเนื้อหาสตริงเท่านั้นที่เปลี่ยนไปตามแต่ละภาษา ไม่มีขั้นตอนพิเศษใด ๆ: เพียงแค่แปลฟอร์ม แล้วเค้าโครงก็จะตามมา
บันทึกความคืบหน้า
สำหรับฟอร์มที่เปิดใช้งานการบันทึกความคืบหน้า ข้อความแจ้งฝั่งผู้เยี่ยมชมจะถูกแปล:
- ป้ายกำกับปุ่ม Save Progress
- หัวเรื่องและเนื้อหาของอีเมลที่มีลิงก์สำหรับทำต่อ
- ข้อความแสดงความสำเร็จหลังจากบันทึก
ทั้งสามรายการนี้จะอยู่ในงานแปล หลังจากการแปล ให้ทดสอบโดยบันทึกแบบฟอร์มค้างไว้ในแต่ละภาษา และยืนยันว่าอีเมลสำหรับทำต่อส่งมาในภาษาที่ถูกต้อง
ข้อความการตรวจสอบความถูกต้องของแต่ละฟิลด์
แต่ละฟิลด์จะมีข้อความการตรวจสอบความถูกต้องของตัวเอง: ข้อผิดพลาดสำหรับฟิลด์ที่จำเป็น ข้อผิดพลาดของรูปแบบ ข้อความการตรวจสอบความถูกต้องที่กำหนดเอง แต่ละรายการจะปรากฏในงานแปล ข้อความสำหรับ Anti-Spam และ Honeypot จะแปลผ่าน WPML การแปลสตริง (ไม่ใช่งานแปลฟอร์ม)
การดำเนินการข้อความแสดงความสำเร็จและการดำเนินการเปลี่ยนเส้นทางหลังการส่ง
ข้อความขอบคุณแบบอินไลน์ของการดำเนินการข้อความแสดงความสำเร็จจะแปลตามแต่ละภาษา URL ของการดำเนินการเปลี่ยนเส้นทางหลังการส่งก็สามารถแปลได้เช่นกัน ตั้งค่า URL คำขอบคุณที่แตกต่างกันสำหรับแต่ละภาษา เพื่อให้ผู้เยี่ยมชมเข้าสู่หน้าเว็บที่ตรงกับภาษาของตนหลังจากการส่ง
การดำเนินการผ่านอีเมล
การดำเนินการผ่านอีเมลทุกรายการในฟอร์มจะแปลอย่างเป็นอิสระ To, From Name, Subject และ Email Message ทั้งหมดจะปรากฏในงานแปล ฟอร์มที่มีการดำเนินการผ่านอีเมลหลายรายการ (เช่น การแจ้งเตือนผู้ดูแลระบบ + การยืนยันผู้เยี่ยมชม) จะแปลการดำเนินการแต่ละรายการแยกกัน เพื่อให้ข้อความในแต่ละภาษาเป็นอิสระจากกัน
ข้อจำกัดที่ทราบแล้วหนึ่งประการ
แท็กผสาน (Merge tags) ภายในเทมเพลตการดำเนินการผ่านอีเมลจะไม่ถูกแปลตามภาษา การแทรกแท็กผสานจะใช้เทมเพลตภาษาต้นทาง ดังนั้นข้อมูลฟอร์มจะถูกแทนที่เข้าไป แต่ประโยคโดยรอบจะยังคงเป็นภาษาต้นทาง โดยมีการติดตามปัญหานี้ในหน้าข้อผิดพลาด (errata) วิธีแก้ปัญหาชั่วคราว: สร้างประโยคโดยรอบโดยไม่มีแท็กผสานในจุดที่ความแตกต่างของภาษามีความสำคัญ หรือยอมรับข้อจำกัดนี้สำหรับข้อความที่ไม่มีผลกระทบมากนัก
การดำเนินการผสานการทำงาน
สถาปัตยกรรม Actions ของ Ninja Forms หมายความว่าการผสานการทำงานทุกรายการคือขั้นตอนการทำงานในแต่ละฟอร์ม ข้อความที่แสดงต่อผู้เยี่ยมชมของการดำเนินการทุกรายการสามารถแปลได้:
- Webhook Actions เนื้อหาคำขอ (request body) และป้ายกำกับที่แสดงต่อผู้เยี่ยมชมสามารถแปลได้ ส่วนค่าฟิลด์จะยังคงเป็นมาตรฐาน เพื่อไม่ให้จุดรับข้อมูล (endpoints) เกิดข้อผิดพลาด
- Mailchimp / AWeber / Constant Contact / ActiveCampaign / Campaign Monitor / CleverReach / Drip / EmailOctopus / Emma / Kit / MailerLite / MailPoet ป้ายกำกับรายการ / เซกเมนต์ / แท็กสามารถแปลได้ หากอยู่ในรูปแบบสตริงระดับฟอร์ม
- HubSpot / Salesforce / ZohoCRM ป้ายกำกับไปป์ไลน์ / ขั้นตอน / ฟอร์มสามารถแปลได้
- Zapier / Slack / Trello สตริงของช่องทาง ป้ายกำกับ และชื่อฟอร์มเว็บฮุคสามารถแปลได้
สำหรับการผสานการทำงานด้านการชำระเงิน (Stripe, Authorize.net, Elavon, PayPal) คำอธิบายการซื้อและป้ายกำกับปุ่มที่แสดงต่อผู้เยี่ยมชมสามารถแปลได้ ให้ทดลองทำธุรกรรมในแต่ละภาษาโดยใช้โหมดทดสอบของผู้ให้บริการชำระเงิน และยืนยันว่าข้อความในใบเสร็จถูกต้อง
ข้อจำกัดที่ทราบแล้ว – การส่งฟอร์ม PDF
ส่วนเสริม Ninja Forms PDF Form Submission จะไม่สร้าง PDF เมื่อเปิดใช้งาน Ninja Forms Multilingual ในฟอร์มที่มีการกำหนดค่าการแปล ปัญหานี้มีการติดตามในกระทู้สนทนา วิธีแก้ปัญหาชั่วคราว: ปิดการใช้งานส่วนเสริม PDF สำหรับฟอร์มที่แปลแล้วจนกว่าจะมีการแก้ไขปัญหาความเข้ากันได้
ข้อผิดพลาดที่พบบ่อย
- เนื้อหาของการดำเนินการผ่านอีเมลมีข้อความรอบแท็กผสานที่ไม่ได้รับการแปล เป็นข้อจำกัดที่ทราบแล้ว (ดูด้านบน) ให้ปรับโครงสร้างเนื้อหาอีเมลใหม่เพื่อวางข้อความที่แปลแล้วไว้นอกการแทรกแท็กผสาน หรือยอมรับข้อจำกัดนี้
- อีเมลแจ้งเตือนผู้ดูแลระบบส่งมาในภาษาต้นทาง ยืนยันว่าการดำเนินการผ่านอีเมลที่คุณกำลังทดสอบได้ถูกส่งไปแปลอีกครั้งหลังจากการแก้ไขครั้งล่าสุดของคุณ หากยังคงมีปัญหา ให้ตรวจสอบสถานะจากกระทู้สนทนาที่เกี่ยวข้อง
- ตรรกะแบบมีเงื่อนไข (Conditional Logic) หยุดทำงานในฟอร์มที่แปลแล้ว ป้ายกำกับตัวเลือกถูกแก้ไขในภาษาต้นทางหลังจากการแปล ให้ส่งฟอร์มไปแปลอีกครั้งเพื่อรีเฟรชการจับคู่ค่า
- การส่งฟอร์ม PDF หยุดทำงาน ปิดการใช้งานส่วนเสริมหรือลบการแปลออกในระหว่างรอการแก้ไขปัญหาความเข้ากันได้
เขียนโดย Amir · อัปเดตล่าสุดเมื่อ 2 กรกฎาคม 2026
เขียนโดย Amir · อัปเดตล่าสุด 2 กรกฎาคม 2026