ข้ามไปยังเนื้อหาหลัก

ภาษาของ UI

Logto รองรับพารามิเตอร์มาตรฐาน OIDC สำหรับการยืนยันตัวตน ui_locales เพื่อควบคุมภาษาของประสบการณ์การลงชื่อเข้าใช้และการสื่อสารต่อเนื่องสำหรับแต่ละอินเทอร์แอคชัน

สิ่งที่ทำได้

  • กำหนดภาษาของ UI ในประสบการณ์การลงชื่อเข้าใช้ที่โฮสต์โดย Logto ขณะรันไทม์ Logto จะเลือกแท็กภาษาตัวแรกใน ui_locales ที่รองรับในไลบรารีภาษาใน tenant ของคุณ
  • มีผลกับการแปลอีเมลสำหรับข้อความที่ถูกทริกเกอร์โดยอินเทอร์แอคชัน (เช่น อีเมลรหัสยืนยัน) ดู การแปลเทมเพลตอีเมล
  • เปิดเผยค่าต้นฉบับให้กับเทมเพลตอีเมลเป็นตัวแปร uiLocales เพื่อให้คุณสามารถนำไปใช้ในหัวข้อ/เนื้อหาอีเมลได้หากต้องการ
  • กำหนดรหัสประเทศเริ่มต้นของหมายเลขโทรศัพท์ในประสบการณ์การลงชื่อเข้าใช้ เช่น หาก ui_locales=fr ช่องกรอกหมายเลขโทรศัพท์จะตั้งค่าเริ่มต้นเป็นฝรั่งเศส (+33) ฟีเจอร์นี้มีประโยชน์เมื่อคุณต้องการควบคุมรหัสประเทศเริ่มต้นแบบโปรแกรมสำหรับกลุ่มผู้ใช้หรือภูมิภาคเฉพาะ

รูปแบบของพารามิเตอร์

  • ชื่อ: ui_locales
  • ชนิด: string
  • ค่า: รายการแท็กภาษาตาม BCP 47 คั่นด้วยช่องว่าง เช่น fr-CA fr en
  • อ้างอิง: OpenID Connect Core - ui_locales

ลำดับและลำดับความสำคัญในการเลือกภาษา

เมื่อกำหนดภาษาของ UI สำหรับประสบการณ์การลงชื่อเข้าใช้และอีเมลที่เกี่ยวข้อง Logto จะเลือกภาษาของผู้ใช้ปลายทางตามลำดับนี้:

  1. ui_locales จากคำขอการยืนยันตัวตนปัจจุบัน (แท็กที่รองรับตัวแรกจะถูกเลือก)
  2. หากไม่พบ ใช้ Accept-Language header (Experience API / Account API) หรือ messagePayload.locale (Management API เช่น คำเชิญองค์กร)
  3. หากยังไม่พบ ใช้ภาษาหลักของ tenant ที่ตั้งค่าไว้ใน Sign-in Experience

พฤติกรรมนี้จะไม่เปลี่ยนการตั้งค่าภาษาของคุณถาวร มีผลเฉพาะกับอินเทอร์แอคชันปัจจุบันเท่านั้น

การใช้งาน SDK

หากคุณใช้ Logto SDK ให้ส่ง ui_locales ผ่าน extraParams ของคำสั่ง sign-in เพื่อให้ถูกส่งต่อไปยังคำขอ authorization:

await logtoClient.signIn({
redirectUri: 'https://your.app/callback',
extraParams: {
ui_locales: 'fr-CA fr en',
},
});

ตัวอย่าง

  • ui_locales=fr-CA fr en → หาก fr-CA มีอยู่ในไลบรารีภาษา UI จะเป็นภาษาฝรั่งเศส (แคนาดา) หากไม่พบจะย้อนกลับไปที่ fr แล้วจึงเป็น en
  • ui_locales=ja แต่ไม่ได้เปิดใช้งานภาษาญี่ปุ่น → จะย้อนกลับไปที่ Accept-Language หรือค่าหลักของ tenant