ข้ามไปยังเนื้อหา
Dee Wan 1.0 ยังอยู่ระหว่างพัฒนาและยังไม่เปิดตัว (pre-MVP) — ดู ขอบเขตผลิตภัณฑ์ 1.0

ภาษา

แต่ละเว็บไซต์มีภาษาของตัวเอง ภาษาเริ่มต้นหนึ่งภาษา และกฎว่าผู้เข้าชมจะได้อะไรเมื่อไม่มีคำแปล ตั้งค่าทั้งหมดได้ที่ การตั้งค่า → ภาษา การเปลี่ยนต้องมีสิทธิ์ตั้งค่าเว็บไซต์ (site:settings)

สัญญาสาธารณะฉบับเต็มอยู่ใน ภาษาใน API สาธารณะ กฎของฟิลด์และที่อยู่อยู่ใน โมเดล ภาษา และหน้า และ ที่อยู่ของรายการ

  1. เปิด การตั้งค่า → ภาษา
  2. เปิด เลือกภาษา แล้วค้นหาภาษา แสดงภาษาถิ่นของ {name} แสดงภาษาย่อยตามภูมิภาค
  3. กด เพิ่มภาษา

แต่ละภาษาเพิ่มให้เว็บไซต์ได้ครั้งเดียว ถ้าเว็บไซต์ยังไม่มีภาษาเริ่มต้น ตั้งเป็นค่าเริ่มต้น จะตั้งภาษาใหม่เป็นภาษาเริ่มต้น

การเพิ่มภาษาไม่เปลี่ยนเนื้อหา รายการจะมีภาษาใหม่ก็ต่อเมื่อมีคนเริ่มคำแปล ดู คำแปล

ภาษาเริ่มต้นมีป้าย ค่าเริ่มต้น กด ตั้งเป็นค่าเริ่มต้น ที่ภาษาอื่นเพื่อเปลี่ยน

  • การอ่านที่ไม่ระบุ locale จะได้ภาษาเริ่มต้น
  • ภายใต้กฎภาษาสำรอง ภาษาเริ่มต้นเป็นภาษาสุดท้ายที่ลองก่อนภาษาหลักของรายการ
  • รายการใหม่เริ่มต้นด้วยภาษาเริ่มต้น
  • การเปลี่ยนภาษาเริ่มต้นจะล้างแคชของการอ่านสาธารณะของเว็บไซต์ ถ้าล้างไม่สำเร็จ หน้าจอจะแจ้ง และผู้อ่านอาจได้ภาษาเริ่มต้นเดิมอยู่ระยะหนึ่ง
  • ภาษาเริ่มต้นนำออกไม่ได้

เลือกสิ่งที่ผู้เข้าชมได้รับเมื่อไม่มีคำแปล

หัวข้อที่มีชื่อว่า “เลือกสิ่งที่ผู้เข้าชมได้รับเมื่อไม่มีคำแปล”

ในส่วน คำแปลที่ขาด ตั้งค่า เมื่อไม่มีภาษานี้:

ตัวเลือก กฎ ผู้เข้าชมที่ขอภาษาที่ไม่มีจะได้รับ
แสดงหน้าภาษาเริ่มต้น fallback ภาษาแรกที่เผยแพร่แล้วในลำดับด้านล่าง ค่า locale ในคำตอบบอกว่าเป็นภาษาใด
แสดงไม่พบหน้า strict ไม่ได้อะไร รายการถูกตัดออกจากลิสต์ การอ่านโดยตรงตอบ 404 locale_unavailable

ระบบส่งเฉพาะภาษาที่เผยแพร่แล้ว ภาษาที่เป็นฉบับร่างไม่เคยถูกใช้แทนภาษาอื่น

ถ้ายังไม่ได้ตั้งค่า หน้าจอจะแสดง ยังไม่ได้ตั้งค่า API สาธารณะของไซต์นี้จึงไม่ให้บริการ เลือกหนึ่งตัวเลือกด้านบน

เมื่อเลือก แสดงหน้าภาษาเริ่มต้น และมีมากกว่าหนึ่งภาษา ส่วน ภาษาสำรอง จะปรากฏ แต่ละภาษากำหนดรายการภาษาที่จะลองตามลำดับก่อนภาษาเริ่มต้นได้

  1. กด แก้ไข ที่ภาษา
  2. ใต้ ถ้าไม่มี {language} ให้แสดง กด เพิ่มภาษาสำรอง แล้วเลือกภาษา
  3. จัดลำดับด้วยปุ่มย้าย เอาภาษาออกด้วยปุ่มลบของภาษานั้น
  4. กด บันทึก

ก่อนบันทึก หน้าจอจะนับว่าผู้เข้าชมภาษานั้นจะได้อะไร: แปลแล้ว: {count}, แสดงเป็น {language}: {count} และ ไม่แสดง: {count}

  • ภาษาสำรองของภาษาสำรองจะตามต่อไปด้วย เมื่อมี pt-BR → pt และ pt → es ผู้เข้าชม pt-BR จะได้ pt-BR แล้ว pt แล้ว es แล้วภาษาเริ่มต้น
  • เมื่อการแก้ไขกระทบผู้เข้าชมภาษาอื่นด้วย หน้าจอจะแสดงคำเตือน ยังเปลี่ยนสิ่งที่ผู้เข้าชม {languages} เห็นด้วย
  • รายการหนึ่งมีได้ไม่เกิน 8 ภาษา
  • การบันทึกจะถูกปฏิเสธเมื่อภาษาวนกลับมาหากัน เมื่อภาษาอ้างถึงตัวเอง ระบุภาษาซ้ำ หรือระบุภาษาที่เว็บไซต์ไม่มี
  • ถ้าไม่มีรายการ ภาษานั้นจะใช้ภาษาเริ่มต้นอย่างเดียว
  • ภายใต้ แสดงไม่พบหน้า ภาษาสำรองจะไม่ถูกใช้

การอ่านสาธารณะระบุภาษาด้วย ?locale= ถ้าไม่ระบุ จะได้ภาษาเริ่มต้น

  • ภายใต้ fallback การอ่านจะลองภาษาที่ขอ ภาษาสำรองของภาษานั้น ภาษาเริ่มต้น แล้วภาษาหลักของรายการ และส่งภาษาแรกที่เผยแพร่แล้ว
  • ภายใต้ strict จะส่งเฉพาะภาษาที่ขอ และเฉพาะขณะที่ภาษานั้นเผยแพร่อยู่
  • แต่ละภาษาของรายการมีที่อยู่ของตัวเอง การอ่านรายการเดียวแสดงทุกภาษาที่เผยแพร่และที่อยู่ของแต่ละภาษาใน alternates
  • ตัวแก้ไขแสดงผลลัพธ์ของแต่ละภาษา เช่น ยังไม่เผยแพร่เป็น ไทย ผู้เข้าชมจะเห็น อังกฤษ หรือ ยังไม่เผยแพร่เป็น ไทย ผู้เข้าชมจะเห็นหน้าไม่พบ

กฎเป็นของเว็บไซต์ ผู้เข้าชมหรือผู้เรียก API เปลี่ยนไม่ได้

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

ในตัวแก้ไขเนื้อหา ใช้ภาษาสำรอง จะลบคำแปลของช่องนั้น ส่วน กรอกคำแปล ใช้เริ่มกรอกค่าในภาษานี้อีกครั้ง การล้างช่องถือว่าตั้งใจเว้นว่าง: ค่าว่าง null false ศูนย์ และรายการว่างจะไม่ถูกแทนด้วยค่าจากภาษาอื่น

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

การอ่านรายการผ่าน API สาธารณะ รายการ ตัวกรอง การเรียงลำดับ การค้นหา และหน้าของเว็บไซต์ที่สร้างขึ้นใช้ค่าหลังเติมภาษาสำรองแล้ว ค่า locale ในคำตอบยังคงระบุภาษาที่ใช้แสดงรายการ ตัวแก้ไขเก็บคำแปลแยกไว้ การใช้ภาษาสำรองจึงไม่คัดลอกค่าไปบันทึกในคำแปล

การบันทึกผ่าน API จัดการใช้ unset_fields: {"th": ["subtitle"]} เพื่อลบคำแปลของช่องได้ รับเฉพาะช่องที่เปิดตัวเลือกนี้ไว้ และห้ามกำหนดค่าพร้อมลบค่าในคำขอเดียวกัน สิทธิ์ของช่องและภาษายังมีผลตามเดิม การไม่ส่งคีย์ในคำขอแก้ไขบางส่วนจะคงค่าเดิมไว้

โดยค่าเริ่มต้น บทบาทเข้าถึงทุกภาษา หากต้องการจำกัด ให้เปิด การตั้งค่า → บทบาท แก้ไขบทบาท แล้วเปิด จำกัดฟิลด์และภาษา

  • จำกัดภาษา เลือกภาษาที่บทบาททำงานได้ มีผลกับการสร้าง แก้ไข ลบ กู้คืน ตรวจทาน เผยแพร่ และยกเลิกการเผยแพร่
  • อ่านได้ทุกภาษา เปิดการอ่านไว้ ผู้แปลจึงอ่านภาษาต้นทางได้ขณะแก้ไขเฉพาะภาษาของตน
  • การกระทำนอกภาษาของบทบาทจะถูกปฏิเสธด้วย locale_denied การกระทำที่ครอบคลุมหลายภาษา เช่น การเผยแพร่ทั้งรายการหรือการทำงานแบบกลุ่ม จะถูกปฏิเสธทั้งหมด
  • ฟิลด์ที่ใช้ร่วมกัน รายการความสัมพันธ์ที่ใช้ร่วมกัน และสื่อ อยู่ในภาษาหลัก การเปลี่ยนต้องมีสิทธิ์แก้ไขภาษาหลัก

กฎฉบับเต็มอยู่ใน จำกัดบทบาทให้เหลือบางฟิลด์หรือบางภาษา

การกระทำเหล่านี้เปลี่ยนภาษาเดียวและไม่แตะภาษาอื่น:

  • เริ่มคำแปล {language} เพิ่มภาษาให้รายการ
  • เผยแพร่{language} และ เลิกเผยแพร่{language} ในแผง การเผยแพร่ ของรายการ
  • ย้ายภาษานี้ไปถังขยะ และการกู้คืนภาษานั้นจากถังขยะ
  • กู้คืนเฉพาะ {language} ในประวัติของรายการ
  • ที่อยู่ของแต่ละภาษา
  • ฟิลด์ความสัมพันธ์ที่เปิด ลิงก์ต่างกันในแต่ละภาษา ดู ลิงก์ต่างกันในแต่ละภาษา
  • ข้อความแทนภาพและคำอธิบายแต่ละภาษาใน คลังสื่อ

การกระทำที่มีป้าย ทุกภาษา ย้ายทุกภาษาของรายการ การย้ายระหว่างสองขั้นที่ไม่ได้เผยแพร่ เช่น อนุมัติ · ทุกภาษา จะคงภาษาที่เผยแพร่อยู่แล้วให้ยังออนไลน์ นำภาษานั้นออกด้วย เลิกเผยแพร่{language} ดู ภาษาเดียวหรือทุกภาษา

กด นำออก ที่ภาษา การยืนยันจะนับสิ่งที่ภาษานั้นมี: รายการเนื้อหาที่เขียนในภาษานี้ กลุ่มคำแปลที่ใช้ภาษานี้เป็นภาษาหลัก และคำอธิบายสื่อ

  • การนำออกจะเอาภาษาออกจากเครื่องมือแก้ไข ไม่มีข้อมูลที่เก็บไว้ถูกลบ
  • เนื้อหาที่เผยแพร่อาจยังส่งในภาษานี้ต่อไปจนกว่าจะถูกแก้ไขและเผยแพร่ใหม่
  • ภาษาเริ่มต้นนำออกไม่ได้ ให้ตั้งภาษาอื่นเป็นภาษาเริ่มต้นก่อน
  • ภาษาที่เป็นภาษาสำรองของภาษาอื่นนำออกไม่ได้: {language} เป็นภาษาสำรองของ {languages} โปรดนำออกจากรายการเหล่านั้นก่อน
  • ถ้าสิ่งที่ภาษานั้นมีเปลี่ยนไปก่อนคุณยืนยัน การนำออกจะถูกปฏิเสธ ตรวจตัวเลขใหม่แล้วลองอีกครั้ง
  • สร้างเนื้อหาใหม่ในภาษาที่นำออกแล้ว หรือภาษาที่เว็บไซต์ไม่เคยมี ไม่ได้ (unknown_locale) การสร้างที่ทำงานอยู่ขณะนำภาษาออกจะไม่เขียนอะไร (language_changed)
ปัญหา สาเหตุ วิธีแก้
API สาธารณะตอบ 500 site_locale_policy_invalid ไม่มีกฎสำหรับคำแปลที่ขาดหายบันทึกไว้ เลือกกฎในส่วน คำแปลที่ขาด
การอ่านตอบ 404 locale_unavailable รายการเผยแพร่แล้ว แต่ไม่มีภาษาใดที่กฎอนุญาตให้ส่ง ภายใต้ strict นับเฉพาะภาษาที่ขอ เผยแพร่ภาษานั้น เพิ่มภาษาสำรอง หรือเปลี่ยนเป็น แสดงหน้าภาษาเริ่มต้น
ผู้เข้าชมเห็นภาษาอื่น กฎ fallback และภาษาที่ขอยังไม่เผยแพร่ ตรวจ locale ในคำตอบ แล้วเผยแพร่คำแปล
นำออก ถูกปฏิเสธ เป็นภาษาเริ่มต้น หรือเป็นภาษาสำรองของภาษาอื่น เปลี่ยนภาษาเริ่มต้น หรือแก้รายการภาษาสำรอง
บันทึกรายการภาษาสำรองไม่ได้ วนซ้ำ ซ้ำกัน ภาษาที่ไม่รู้จัก หรือเกิน 8 ภาษา แก้รายการตามที่หน้าจอบอก
การเพิ่มภาษาให้รายการถูกปฏิเสธด้วย language_in_trash ภาษานั้นของรายการอยู่ในถังขยะ กู้คืนจากถังขยะ
ผู้แปลเผยแพร่ภาษาของตนไม่ได้ บทบาทไม่มีสิทธิ์เผยแพร่ในภาษานั้น หรือการกระทำครอบคลุมหลายภาษา ใช้ปุ่มของภาษานั้นเอง หรือขยายบทบาท

แปลและเผยแพร่รายการตามคู่มือ แก้ไขและเผยแพร่เนื้อหา


ยังไม่เปิดตัว (pre-MVP) และยังไม่มีเวอร์ชันเสถียร
คอมมิตซอร์สโค้ด: fe23db481c422b40e317b92fc98116b4c0c26a87 (มีการแก้ไขที่ยังไม่คอมมิต)
วันที่สร้างเอกสาร (UTC): 2026-10-18T09:22:34.630Z
คอมมิตสำหรับอัปเกรด: ระบุไม่ได้: มีการแก้ไขที่ยังไม่คอมมิต. บันทึกการเปลี่ยนแปลง