ภาษาท้องถิ่น
Logto รองรับภาษาที่กำหนดไว้ล่วงหน้าหลากหลายภาษา และมีแท็กภาษาเพิ่มเติมอีก 113 แท็ก เครื่องมือนี้ช่วยให้คุณปรับแต่งประสบการณ์การลงชื่อเข้าใช้ได้โดยการสร้างและจัดการตัวเลือกภาษาและคำแปลของคุณเอง
ขั้นตอนการปรับแต่งใน Logto Console
ปรับแต่งการตั้งค่าภาษาใน Logto Console ได้อย่างง่ายดายโดยไม่ต้องเขียนโค้ด
- ไปที่: Console > ประสบการณ์การลงชื่อเข้าใช้ > เนื้อหา > ภาษา
- จัดการภาษา: คลิกปุ่ม “จัดการภาษา” เพื่อเข้าถึงคลังภาษาของคุณ
- แก้ไขภาษาที่มีอยู่: ปรับแต่งคำแปลของภาษาที่ Logto ให้มา ภาาเหล่านี้ไม่สามารถลบได้ แต่การเปลี่ยนแปลงของคุณจะเขียนทับค่าดั้งเดิม
- เพิ่มภาษาใหม่: คลิกปุ่ม “เพิ่มภาษา” เลือกแท็กภาษา ใส่คำแปลของคุณ แล้วบันทึกการเปลี่ยนแปลงเพื่อเพิ่มภาษาใหม่
- เปิดใช้งานตรวจจับอัตโนมัติ: เมื่อเปิดใช้งานแล้ว ระบบจะแสดงหน้าลงชื่อเข้าใช้เป็นภาษาที่ผู้ใช้ต้องการโดยอัตโนมัติตามการตั้งค่าของอุปกรณ์
- ตั้งค่าภาษาเริ่มต้น: คุณสามารถเลือกภาษาเริ่มต้นจากคลังภาษาของคุณ ภาษาเริ่มต้นนี้จะถูกใช้เมื่อไม่พบภาษาของผู้ใช้ในคลังภาษา
ต่อไปนี้คือคำศัพท์สำคัญที่ควรเข้าใจเมื่อจัดการภาษา:
| คำจำกัดความ | คำอธิบาย |
|---|---|
| แท็กภาษา (Language tag) | แท็กภาษาคือรหัสที่ระบุภาษาของเนื้อหา ประกอบด้วยรหัสภาษา (เช่น en, fr, zh) และรหัสประเทศ / ภูมิภาค (เช่น US, UK, KR) คั่นด้วยขีดกลาง ตัวอย่างเช่น: en-US |
| ภาษา Logto ให้มา | ภาษา Logto ให้มาคือภาษาทางการของ Logto และถูกเก็บไว้ในโค้ดต้นฉบับของ Logto |
| ภาษาที่เพิ่ม | ภาษาที่เพิ่มคือภาษาที่ผู้ใช้เพิ่มเข้ามาเอง |
| ค่าเริ่มต้นของ Logto | ค่าเริ่มต้นของ Logto คือค่าที่ Logto กำหนดมาและยังไม่ได้รับการปรับแต่งโดยผู้ใช้ |
| ค่าที่ปรับแต่งแล้ว | ค่าที่ปรับแต่งแล้วคือค่าที่ผู้ใช้ได้ปรับแต่งเองแล้ว ค่าต้นฉบับของ Logto จะถูกเขียนทับ |
การปรับแต่งผ่าน Management API
คุณสามารถใช้ Management API PUT /api/custom-phrases/{languageTag} เพื่อปรับแต่งคำแปลภาษาได้ โดย body ของ API request จะเป็นอ็อบเจกต์ locale แบบบางส่วน เช่น:
{
"input": { "username": "Username", "password": "Password" },
"secondary": {
"social_bind_with": "มีบัญชีอยู่แล้วใช่ไหม? ลงชื่อเข้าใช้เพื่อเชื่อมโยง {{methods, list(type: disjunction;)}} กับบัญชีโซเชียลของคุณ"
},
"action": { "sign_in": "ลงชื่อเข้าใช้" },
"error": {
"general_required": "{{types, list(type: disjunction;)}} จำเป็นต้องระบุ"
},
"list": { "or": "หรือ" },
"user_scopes": {
"descriptions": { "custom_data": "ข้อมูลที่คุณกำหนดเอง" }
}
}
ดู ซอร์สโค้ด เพื่อดูเนื้อหาทั้งหมดที่สามารถปรับแต่งได้
คุณยังสามารถใช้ PATCH /api/sign-in-exp API เพื่อควบคุมนโยบาย การตรวจจับภาษา
การเลือกภาษาในขณะรันไทม์
ในขณะรันไทม์ ระบบจะเลือกภาษาของประสบการณ์การลงชื่อเข้าใช้ตามลำดับความสำคัญดังนี้:
- พารามิเตอร์
ui_localesของ OIDC จากคำขอการยืนยันตัวตนปัจจุบัน (ใช้แท็กแรกที่รองรับ) ดู ui_locales - หากไม่ได้ระบุ และเปิดใช้งาน “ตรวจจับอัตโนมัติ” ระบบจะใช้ภาษาของไคลเอนต์ผู้ใช้ที่ตรวจพบ (เช่น จาก HTTP header
Accept-Language) - หากยังไม่พบ จะใช้ภาษาเริ่มต้นของ tenant ใน Sign-in Experience
การเลือกภาษานี้ยังมีผลกับการแปลอีเมลสำหรับข้อความที่เกิดจากการโต้ตอบด้วย ดูเพิ่มเติม: การแปลเทมเพลตอีเมล
กรณีการใช้งาน
ภาษาที่เพิ่มจะปรากฏต่อผู้ใช้ปลายทางอย่างไร?
สมมติว่าคุณมีเว็บไซต์ที่ใช้ภาษาอังกฤษเป็นค่าเริ่มต้นและเปิดใช้งานตรวจจับอัตโนมัติ ผู้ใช้จากญี่ปุ่นเข้ามาที่เว็บไซต์ของคุณและต้องการสร้างบัญชี หากเขา / เธอใช้ภาษาญี่ปุ่นเป็นภาษาของแอป แต่ Logto ยังไม่รองรับภาษานี้ หน้าลงชื่อเข้าใช้จะปรากฏเป็นภาษาอังกฤษ
ประสบการณ์การลงชื่อเข้าใช้ของ Logto รองรับ i18n ทำให้สามารถปรับแต่งภาษาได้
คลิกแท็กภาษา ja เพื่อเพิ่มคำแปลภาษาญี่ปุ่นของคุณเอง
ด้วยวิธีนี้ ผู้ใช้ที่เข้าถึงเว็บไซต์ของคุณจากญี่ปุ่นจะสามารถอ่านเนื้อหาเป็นภาษาญี่ปุ่นที่คุณเพิ่งแปลจากภาษาอังกฤษ
คำถามที่พบบ่อย
ถ้าภาษาที่ฉันเพิ่มกลายเป็นภาษา Logto ให้มาจะเกิดอะไรขึ้น?
ถัดจากแท็กภาษาทางซ้ายจะมีป้ายกำกับว่า Logto-provided ปรากฏขึ้น และภาษาที่คุณเพิ่มจะไม่สามารถลบได้อีกต่อไป ค่าที่คุณแก้ไขจะยังคงทำงานและแทนที่ค่าต้นฉบับของ Logto หากต้องการกลับไปใช้ค่าที่ Logto กำหนดมา ให้ลบค่าที่ผู้ใช้ระบุออก
ถ้าฉันเพิ่มค่าที่ปรับแต่งเองเพียงบางส่วนจะเป็นอย่างไร?
สิ่งที่ผู้ใช้ปลายทางเห็นคือผลลัพธ์ของการรวมสองคอลัมน์ สมมติว่าคุณต้องการปรับแต่งเฉพาะบางส่วนของเนื้อหาต้นฉบับที่ Logto ให้มา ความแตกต่างระหว่างหน้าสมัครของคุณกับของ Logto จะมีเฉพาะคีย์ที่คุณแก้ไข ส่วนที่เหลือจะเหมือนเดิม
ฉันจะตั้งค่ารหัสประเทศของหมายเลขโทรศัพท์เริ่มต้นสำหรับประสบการณ์การลงชื่อเข้าใช้ได้อย่างไร?
รหัสประเทศของหมายเลขโทรศัพท์ใน ประสบการณ์การลงชื่อเข้าใช้ จะตั้งค่าเริ่มต้นตาม locale ของเบราว์เซอร์ผู้ใช้ เช่น หากเบราว์เซอร์ของผู้ใช้ตั้งเป็น fr รหัสประเทศจะเป็นฝรั่งเศส (+33)
หากต้องการควบคุมรหัสประเทศเริ่มต้นสำหรับผู้ใช้หรือภูมิภาคเฉพาะแบบโปรแกรม ให้ใช้พารามิเตอร์ ui_locales ในการยืนยันตัวตน เช่น ตั้งค่า ui_locales=ja จะทำให้รหัสประเทศเริ่มต้นเป็นญี่ปุ่น (+81)
แหล่งข้อมูลที่เกี่ยวข้อง
การรองรับภาษาอาหรับและการจัดวางภาษาแบบขวาไปซ้าย (RTL) ในแอปพลิเคชันของคุณ