WPML

เรียนรู้วิธีรักษาความเข้ากันได้ของโมดูล Divi กับ WPML ผ่านไฟล์การกำหนดค่าภาษา wpml-config.xml

เอกสารประกอบนี้จัดทำขึ้นสำหรับทีมพัฒนา Divi และนักพัฒนาเว็บที่ใช้ Divi โดยจะอธิบายกระบวนการรักษาความเข้ากันได้ของ Divi Builder กับ WPML ซึ่งทำได้โดยการอัปเดตไฟล์การกำหนดค่าภาษา

หน้านี้อ้างอิงถึง Divi 5 ซึ่งจัดเก็บเนื้อหาเป็นบล็อกที่เข้ากันได้กับ Gutenberg (Divi 4 เคยใช้ shortcode)

การผสานการทำงานของ Divi Builder กับ WPML

เพื่อให้เข้าใจว่า Divi Builder ทำงานร่วมกับ WPML อย่างไร เรามาเริ่มต้นด้วยการสร้างหน้าง่าย ๆ โดยใช้ Divi Builder เราได้เพิ่มโมดูลบางส่วนในตัวอย่างด้านล่าง เช่น Text, Number Counter, Icon เป็นต้น

หน้าที่สร้างด้วย Divi Builder (มุมมองโครงร่าง)
หน้าที่สร้างด้วย Divi Builder (มุมมองโครงร่าง)

หากต้องการแปล ให้ไปที่ WPMLการแปล และค้นหาหน้าเว็บภายใต้ส่วนหน้า เลือกหน้านั้นแล้วคลิก แปลเนื้อหาของคุณ เพื่อเลือกวิธีการแปล หากคุณมีคำสำหรับการแปลด้วย AI คุณสามารถแปลหน้านี้โดยอัตโนมัติได้ในไม่กี่นาที

การแปลหน้า Divi โดยใช้แดชบอร์ดการแปล
การแปลหน้า Divi โดยใช้แดชบอร์ดการแปล

การใช้ไฟล์การกำหนดค่าภาษา

ในไฟล์ wpml-config.xml คุณสามารถกำหนดค่าองค์ประกอบต่อไปนี้ได้:

  • บล็อกของปลั๊กอินสร้างหน้าเว็บ
  • ฟิลด์กำหนดเอง
  • อนุกรมวิธานที่กำหนดเอง
  • ข้อความผู้ดูแลระบบ / wp_options
  • การกำหนดค่าตัวสลับภาษา

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับโครงสร้างและไวยากรณ์ โปรดดูคู่มือไฟล์การกำหนดค่าภาษาของเรา

การรับไฟล์การกำหนดค่าสำหรับ Divi

การกำหนดค่าไฟล์ wpml-config.xml จะแยกสตริงข้อความออกจากหน้าที่สร้างโดยใช้ Divi Builder และโหลดลงใน ตัวแก้ไขการแปลขั้นสูง ใช้ไฟล์นี้เพื่อเพิ่มประเภทบล็อกและแอตทริบิวต์ใหม่ รวมถึงลบประเภทบล็อกที่ล้าสมัยออก

คุณสามารถดาวน์โหลดไฟล์การกำหนดค่าภาษาได้จากที่เก็บข้อมูลของเรา (เปิดในแท็บใหม่) และวางไว้ในโฟลเดอร์รากของธีมของคุณเมื่อกำหนดค่าเสร็จแล้ว

เราโฮสต์ไฟล์การกำหนดค่าภาษาสำหรับ Divi ไว้บนเซิร์ฟเวอร์ของเรา ดังนั้นไฟล์นี้จึงจะแทนที่ไฟล์การกำหนดค่าในเครื่องที่อยู่ในโฟลเดอร์รากของ Divi ซึ่งจะช่วยให้มั่นใจได้ว่าไฟล์การกำหนดค่าจะได้รับการอัปเดตอยู่เสมอ

การกำหนดค่าบล็อกในไฟล์การกำหนดค่าภาษา

Divi 5 ใช้ไวยากรณ์แบบบล็อก ดังนั้นการลงทะเบียนโมดูล Divi สำหรับการแปลจึงคล้ายกับกระบวนการแปลบล็อก Gutenberg:

  • คำจำกัดความของบล็อกทั้งหมดจะถูกห่อหุ้มไว้ภายในองค์ประกอบหลัก <gutenberg-blocks>
  • แต่ละบล็อกจะถูกประกาศด้วยองค์ประกอบ <gutenberg-block> โดยที่แอตทริบิวต์ type จะตรงกับชื่อที่ลงทะเบียนไว้ของบล็อก
  • ฟิลด์ที่แปลได้จะถูกประกาศเป็นองค์ประกอบย่อย <key>

ลองดูตัวอย่างโมดูล Call to Action ของ Divi:

<!-- wp:divi/cta {"module":{"title":"CTA","button_text":"Contact Us","button_url":"https://example.com/contact/"}} /-->

นี่คือวิธีการกำหนดค่าใน wpml-config.xml:

ตัวอย่าง xml สำหรับบล็อก Divi ในไฟล์การกำหนดค่าภาษา
<gutenberg-blocks>
    <gutenberg-block type="divi/cta" translate="1">
       <key name="module">
         <key name="title" />
         <key name="button_text" />
         <key name="button_url" type="link" />
       </key>
    </gutenberg-block>
</gutenberg-blocks>

โครงสร้างมีรายละเอียดดังนี้:

  • องค์ประกอบ <gutenberg-blocks> ห่อหุ้มคำจำกัดความของบล็อกทั้งหมด
  • องค์ประกอบ <gutenberg-block> กำหนดประเภทบล็อกเดียว ซึ่งระบุโดยแอตทริบิวต์ type โดย translate="1" จะบอกให้ WPML ประมวลผลสิ่งนี้
  • องค์ประกอบ <key> แต่ละรายการจะระบุฟิลด์ที่แปลได้หนึ่งฟิลด์: title และ button_text สำหรับฟิลด์ข้อความธรรมดา และ button_url สำหรับลิงก์
  • แอตทริบิวต์ type="link" บอกให้ WPML แทนที่ URL ด้วยเวอร์ชันที่แปลแล้วของโพสต์หรือหน้าที่ลิงก์โดยอัตโนมัติ

การทดสอบไฟล์การกำหนดค่าภาษา

หากต้องการทดสอบไฟล์การกำหนดค่าภาษาที่อัปเดตแล้ว ให้ทำตามขั้นตอนเหล่านี้:

1. ตั้งค่าเว็บไซต์ที่เปิดใช้งานทั้ง Divi และ WPML ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานส่วนเสริม การแปลสตริง และ การแปลสื่อ ด้วยเช่นกัน

2. หากต้องการแทนที่ไฟล์การกำหนดค่าภาษาระยะไกลด้วยเวอร์ชันที่อัปเดต ให้ไปที่ WPMLการตั้งค่าการกำหนดค่า XML ที่กำหนดเอง คัดลอกเนื้อหาของไฟล์การกำหนดค่าภาษาที่อัปเดตแล้วลงในตัวแก้ไข จากนั้นคลิก บันทึก

การเพิ่มไฟล์ที่อัปเดตลงในแท็บการกำหนดค่า XML ที่กำหนดเอง
การเพิ่มไฟล์ที่อัปเดตลงในส่วนการกำหนดค่า XML ที่กำหนดเอง

3. สร้างหน้าใหม่ และเพิ่มโมดูลใหม่ลงไป หากคุณอัปเดตแอตทริบิวต์บางอย่างสำหรับโมดูลที่มีอยู่ ให้เพิ่มโมดูลเหล่านี้ลงในหน้าด้วยเช่นกัน ในตัวอย่างนี้ เราจะสมมติว่ามีการเพิ่มโมดูล Button ใหม่ลงใน Divi Builder เพิ่มลงในหน้าแล้วคลิก เผยแพร่

การเพิ่มโมดูลใหม่หรือโมดูลที่มีแอตทริบิวต์ที่อัปเดตลงในหน้าทดสอบ
การเพิ่มโมดูลใหม่หรือโมดูลที่มีแอตทริบิวต์ที่อัปเดตลงในหน้าทดสอบ

4. หากต้องการแปลหน้าที่มีปุ่ม คุณสามารถใช้แท็บ แดชบอร์ด ของ WPMLการแปล อีกทางเลือกหนึ่งคือการใช้ ตัวแก้ไขการแปลขั้นสูง (ATE) ซึ่งอาจมีประโยชน์เมื่อทำการทดสอบ เนื่องจากจะแสดงข้อความของโมดูลเป็นฟิลด์ใต้เนื้อหาของหน้าเว็บ เพื่อให้คุณสามารถตรวจสอบได้ว่าแต่ละรายการเข้าสู่งานแปลแล้ว หากต้องการเปิด ATE ให้ไปที่ แก้ไข หน้าเว็บ และคลิกที่ไอคอนบวกใต้กล่องภาษาในแถบด้านข้างทางขวา

การใช้เครื่องหมายบวกเพื่อเปิดตัวแก้ไขการแปลขั้นสูง
การใช้เครื่องหมายบวกเพื่อเปิดตัวแก้ไขการแปลขั้นสูง

5. ตรวจสอบองค์ประกอบต่าง ๆ และเพิ่มคำแปลของคุณ หรือปล่อยให้ ATE แปลโดยอัตโนมัติ

การแปลด้วยตัวแก้ไขการแปลขั้นสูง
การแปลด้วยตัวแก้ไขการแปลขั้นสูง

ตอนนี้ คุณสามารถดูหน้าที่แปลแล้วได้ที่ส่วนหน้าเว็บไซต์ หน้าที่แปลแล้วควรแสดงสตริงข้อความที่แปลทั้งหมด ซึ่งหมายความว่าไฟล์การกำหนดค่าภาษาที่อัปเดตทำงานได้อย่างถูกต้อง

ในกรณีที่คุณพบปัญหาใด ๆ โปรดติดต่อทีมพัฒนาความเข้ากันได้ของเรา พวกเขายินดีที่จะตรวจสอบปัญหาที่เกี่ยวข้องกับไฟล์การกำหนดค่าภาษา

เมื่อทำการทดสอบเสร็จแล้ว โปรดส่งคำขอผสานข้อมูล (merge request) ไปยังที่เก็บข้อมูลของเรา (เปิดในแท็บใหม่) นักพัฒนาความเข้ากันได้ของเราจะได้รับคำขอของคุณและทำการตรวจสอบ

ปัญหาที่ทราบแล้ว

ไม่มีปัญหาความเข้ากันได้ที่ยังไม่ได้รับการแก้ไขระหว่างปลั๊กอินนี้กับ WPML ค้นหาปัญหาที่ทราบแล้วทั้งหมด

เขียนโดยAmir