
يدعم 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 الخاصة بك، جنبًا إلى جنب أو بدلاً من نظيراتها العامة.
لا يتغير شيء في كيفية استدعاء واجهة برمجة التطبيقات. نفس نقطة النهاية، ونفس شكل الطلب. لديك فقط المزيد من الرموز الصالحة للاختيار منها.
ما الذي تمت إضافته
سبعة رموز إقليمية جديدة تتبع معيار 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": "تم تأكيد طلبك.",
"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": "سجّل الدخول إلى حسابك.",
"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: 'الشحن مجاني على الطلبات التي تزيد عن 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": "ابدأ تجربتك المجانية"}'
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 رمز شهريًا.