
PolyLingo ตอนนี้รองรับรหัสภาษาท้องถิ่น: fr-CA, pt-BR, es-MX และอื่นๆ
By Robert M
PolyLingo รองรับรหัสภาษาท้องถิ่นแล้ว: fr-CA, pt-BR, es-MX และอื่นๆ
คุณสามารถส่งรหัสภาษาถิ่นโดยตรงเป็นเป้าหมายการแปลใน PolyLingo ได้แล้ว fr-CA, pt-BR, es-MX, en-GB และอื่นๆ อีกหลายรหัสเป็นค่าที่ถูกต้องในอาร์เรย์ targets ของคุณ พร้อมกับหรือแทนที่รหัสภาษาทั่วไป
ไม่มีการเปลี่ยนแปลงวิธีเรียก API จุดเชื่อมต่อเดียวกัน รูปแบบคำขอเดียวกัน คุณแค่มีรหัสที่ถูกต้องให้เลือกมากขึ้น
สิ่งที่เพิ่มเข้ามา
รหัสภาษาท้องถิ่นใหม่เจ็ดรหัสตามมาตรฐาน BCP-47:
| รหัส | ภาษา |
|---|---|
en-GB | อังกฤษ (สหราชอาณาจักร) |
fr-CA | ฝรั่งเศส (แคนาดา) |
es-ES | สเปน (สเปน) |
es-MX | สเปน (เม็กซิโก) |
pt-PT | โปรตุเกส (โปรตุเกส) |
pt-BR | โปรตุเกส (บราซิล) |
zh-HK | จีน (ฮ่องกง) |
รหัสเหล่านี้อยู่เคียงข้าง zh-TW (จีนตัวเต็ม) ที่มีอยู่แล้วซึ่งใช้มาตรฐาน BCP-47 เดียวกัน ขีดจำกัดเป้าหมายก็ถูกเพิ่มจาก 36 เป็น 50 เพื่อรองรับทีมที่ต้องการแปลหลายภาษาท้องถิ่นในคำขอเดียว
ทำไมรหัสภาษาท้องถิ่นจึงสำคัญ
รหัสภาษาทั่วไป (fr, pt, es) ใช้ได้ดีเมื่อกลุ่มเป้าหมายกว้างหรือหลากหลาย แต่เมื่อคุณส่งมอบผลิตภัณฑ์ไปยังประเทศเฉพาะ รหัสทั่วไปมักไม่เพียงพอ
โปรตุเกสบราซิลและโปรตุเกสยุโรปแตกต่างกันในคำศัพท์ การสะกด และระดับภาษาที่สำคัญสำหรับเจ้าของภาษา สเปนเม็กซิโกและสเปนคาสติเลียนคล้ายกันมากจนการแปลทั่วไปไม่ดูแปลกสำหรับใครแต่ก็ไม่เป็นธรรมชาติสำหรับใครเช่นกัน ฝรั่งเศสแคนาดามีรูปแบบเฉพาะที่แตกต่างจากฝรั่งเศสปารีสอย่างชัดเจนสำหรับชาวควิเบก
ถ้าคุณขายในตลาดเฉพาะ ตลาดนั้นสมควรได้รับการแปลที่เขียนขึ้นสำหรับพวกเขา รหัสภาษาท้องถิ่นทำให้เป็นไปได้โดยไม่ต้องเรียก API แยกหรือกระบวนการแยก
เรียกใช้คำขอเดียว หลายรูปแบบ
รหัสทั่วไปและรหัสภาษาท้องถิ่นสามารถอยู่ร่วมกันในคำขอเดียวกันได้ แต่ละรหัสจะมีคีย์ของตัวเองในคำตอบ:
curl -sS -X POST "https://api.usepolylingo.com/v1/translate" \
-H "Authorization: Bearer $POLYLINGO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Your order has been confirmed.",
"targets": ["fr", "fr-CA", "pt", "pt-BR"]
}'
{
"translations": {
"fr": "Votre commande a été confirmée.",
"fr-CA": "Votre commande a été confirmée.",
"pt": "O seu pedido foi confirmado.",
"pt-BR": "O seu pedido foi confirmado."
}
}
คุณจะได้รับคีย์สี่ตัวกลับมา ตัวละรหัส ถ้า fr และ fr-CA ให้ผลลัพธ์เหมือนกันสำหรับข้อความเดียวกัน นั่นเป็นเรื่องปกติ — พวกเขาจะแตกต่างกันในคำศัพท์และระดับภาษาที่มีความหมาย
กำหนดเป้าหมายตลาดเฉพาะเท่านั้น
ถ้าคุณสร้างสำหรับตลาดที่รู้จักและไม่ต้องการรหัสทั่วไป ให้ส่งรหัสภาษาท้องถิ่นแทน:
curl -sS -X POST "https://api.usepolylingo.com/v1/translate" \
-H "Authorization: Bearer $POLYLINGO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Sign in to your account.",
"targets": ["en-GB", "es-MX", "pt-BR", "zh-HK"]
}'
สร้างรายการเป้าหมายตลาดเฉพาะใน Node.js
import { PolyLingo } from '@polylingo/node'
const client = new PolyLingo(process.env.POLYLINGO_API_KEY)
const result = await client.translate({
content: 'Free shipping on orders over $50.',
targets: ['es', 'es-MX', 'es-ES', 'pt', 'pt-BR', 'pt-PT'],
})
console.log(result.translations['es-MX']) // สเปนเม็กซิโก
console.log(result.translations['pt-BR']) // โปรตุเกสบราซิล
คำขอเดียวครอบคลุมทั้งตลาดละตินอเมริกาและไอบีเรีย ไม่มีการวนลูปหรือแบ่งกลุ่มตามภูมิภาค
แปลไฟล์ JSON ต่อแต่ละตลาดใน Python
import os, requests
client = requests.Session()
client.headers['Authorization'] = f"Bearer {os.environ['POLYLINGO_API_KEY']}"
markets = {
'latam': ['es-MX', 'pt-BR'],
'europe': ['en-GB', 'fr', 'es-ES', 'pt-PT', 'de', 'it'],
'asia': ['zh-HK', 'zh-TW', 'zh', 'ja', 'ko'],
}
content = '{"cta": "Start your free trial"}'
for region, targets in markets.items():
r = client.post(
'https://api.usepolylingo.com/v1/translate',
json={'content': content, 'format': 'json', 'targets': targets},
timeout=120,
)
r.raise_for_status()
print(f"\n{region.upper()}")
for code, text in r.json()['translations'].items():
print(f" {code}: {text}")
ค้นหารหัสที่รองรับในขณะรัน
ถ้าคุณสร้างตัวเลือกภาษา หรือรายการเป้าหมายแบบไดนามิก คุณไม่จำเป็นต้องเขียนรหัสคงที่ GET /languages จะส่งรายการทั้งหมดรวมถึงภาษาท้องถิ่น กรองรหัสที่มีขีดกลางเพื่อรับเฉพาะภาษาถิ่น:
const res = await fetch('https://api.usepolylingo.com/v1/languages')
const { languages } = await res.json()
const dialects = languages.filter(l => l.code.includes('-'))
console.log(dialects)
// [
// { code: 'en-GB', name: 'English (UK)', rtl: false },
// { code: 'fr-CA', name: 'French (Canada)', rtl: false },
// { code: 'es-ES', name: 'Spanish (Spain)', rtl: false },
// { code: 'es-MX', name: 'Spanish (Mexico)', rtl: false },
// { code: 'pt-PT', name: 'Portuguese (Portugal)', rtl: false },
// { code: 'pt-BR', name: 'Portuguese (Brazil)', rtl: false },
// { code: 'zh-TW', name: 'Chinese (Traditional)', rtl: false },
// { code: 'zh-HK', name: 'Chinese (Hong Kong)', rtl: false },
// ]
เมื่อใดควรใช้รหัสทั่วไปกับรหัสภาษาท้องถิ่น
ใช้รหัสทั่วไป (pt, fr, es) เมื่อกลุ่มเป้าหมายของคุณกระจายทางภูมิศาสตร์หรือไม่ทราบ เมื่อคุณเพิ่งเริ่มต้นกับตลาดและต้องการครอบคลุมกว้าง หรือเมื่อเนื้อหามีลักษณะทางเทคนิคที่ความแตกต่างของภาษาท้องถิ่นไม่น่าจะมีผล
ใช้รหัสภาษาท้องถิ่น (pt-BR, fr-CA, es-MX) เมื่อคุณส่งมอบไปยังประเทศเฉพาะ เมื่อประสบการณ์ผลิตภัณฑ์ถูกปรับให้เหมาะสมในด้านอื่นๆ (ราคา สกุลเงิน รูปแบบวันที่) เมื่อเนื้อหาของคุณเป็นการสนทนาหรือเน้นการตลาดและระดับภาษามีความสำคัญ หรือเมื่อคุณรู้ว่าผู้ใช้จะสังเกตเห็นความแตกต่าง
ทั้งสองวิธีสามารถอยู่ร่วมกันในคำขอเดียว รูปแบบทั่วไปคือใช้รหัสทั่วไปเป็นตัวสำรอง และรหัสภาษาท้องถิ่นสำหรับประสบการณ์ตลาดเฉพาะ ทั้งสองจะถูกส่งกลับในคำตอบเดียว
ไม่มีอะไรเสียหายสำหรับผู้ใช้เดิม
รหัสภาษาที่มีอยู่ทั้งหมดยังคงทำงานเหมือนเดิม รหัสใหม่เป็นการเพิ่มเข้ามา ถ้าคุณส่ง fr อยู่แล้ว คุณจะยังได้รับผลลัพธ์เดิม ถ้าคุณต้องการฝรั่งเศสแคนาดาโดยเฉพาะ ให้เพิ่ม fr-CA ในเป้าหมาย ทั้งสองสามารถอยู่ในคำขอเดียวกันโดยไม่มีปัญหา
รับคีย์ API ของคุณที่ usepolylingo.com — แผนฟรีรวม 50,000 โทเค็นต่อเดือน