דלגו לתוכן

בינאום (Internationalization)

הוסף תמיכה במספר שפות לאפליקציה שלך. השתמש ב-Proyecta Content API לבינאום תוכן עריכתי, או בקש מה-AI לחבר framework של i18n ישירות בקוד.

Proyecta תומך בשני גישות משלימות לבינאום האפליקציות שאתה בונה:

  1. בינאום תוכן באמצעות Proyecta Content API — לתוכן עריכתי (פוסטים בבלוג, שאלות נפוצות, תוכן שיווקי) שצריך לתרגם למספר שפות
  2. i18n ברמת הקוד באמצעות framework לתרגום — עבור מחרוזות UI, תאריכים, מטבעות ומעבר בין לוקאלים בזמן ריצה

שתי הגישות פועלות כבר היום. איזו מהן תצטרך תלוי במה שאתה מתרגם.

Proyecta עצמו מגיע עם 24 לוקאלים, כך שהמוצר שולט ב-i18n. אותם דפוסים חלים על האפליקציות שאתה בונה בתוכו.

אפשרות 1: בינאום תוכן (Proyecta Content API)

Section titled “אפשרות 1: בינאום תוכן (Proyecta Content API)”

אם אתה בונה אתר עתיר תוכן — בלוג, בסיס ידע, דפי שיווק, קטלוג מוצרים — השתמש בתמיכה המובנית בלוקאלים של ה-Content API.

// Create the locales you support
await proyecta.content.locales.create({
/* code: 'en', name: 'English' */
});
await proyecta.content.locales.create({
/* code: 'es', name: 'Español' */
});
await proyecta.content.locales.create({
/* code: 'fr', name: 'Français' */
});
// Then create entries that exist in multiple locales — fetch the right
// translation per request based on the user's locale.

זוהי התשובה הנכונה כאשר:

  • עורכים שאינם כותבים קוד צריכים לתרגם תוכן
  • אתה רוצה שתרגומים יהיו בני גרסאות (versionable)
  • אתה צריך פרסום ספציפי ללוקאל (פרסום מתוזמן יגיע בקרוב — כרגע ערכים דורשים פרסום ידני דרך ה-API)

ראה ניהול תוכן לעיון ב-Content API המלא.

אפשרות 2: framework של i18n ברמת הקוד

Section titled “אפשרות 2: framework של i18n ברמת הקוד”

עבור מחרוזות UI — תוויות, כפתורים, הודעות שגיאה, תאריכים, מטבעות — בקש מה-AI לחבר framework של i18n ישירות לפרויקט שלך:

Add internationalization to my app.
Support English, Spanish, French, and Arabic.
Add message catalogs in src/locales/.
Add a language switcher in the header.
Use locale-prefixed URLs like /en/about and /es/about.
Make sure RTL layout works correctly for Arabic.

ה-AI יבצע:

  1. בחירת framework — ה-AI משתמש ב-i18next עם react-i18next (הסטנדרט של Proyecta)
  2. יצירת קבצי קטלוג ב-src/locales/ (קובץ JSON אחד לכל שפה)
  3. עטיפת טקסט בקריאות t() (מ-hook של useTranslation ב-react-i18next)
  4. הוספת רכיב מתג שפה
  5. חיבור ניתוב URL עם קידומות לוקאל
  6. טיפול בפריסת RTL (dir="rtl") עבור ערבית, עברית וכד’
  7. עיצוב מספרים, תאריכים ומטבעות בהתאם ללוקאל

לאחר שפת הבסיס שלך מוכנה, ה-AI מצטיין בייצור קבצי הקטלוג הנוספים:

  • "Translate every string in src/locales/en.json into Spanish, French, German, and Japanese. Use natural, idiomatic phrasing — don't translate brand names."
  • "My app is fully built in English. Add Spanish translations for everything and an es/ route prefix."

עבור תוכן בעל השלכות גבוהות (נוסחים משפטיים, רפואה, פיננסים), מסור את הפלט של ה-AI לעיון מתרגם אנושי לפני השקה.

רוב האפליקציות האמיתיות משתמשות בשתיהן: i18n ברמת הקוד עבור ה-chrome של ה-UI (כפתורים, שגיאות, ניווט), וה-Content API עבור תוכן עריכתי (מאמרים, תיאורי מוצרים). השתיים מתקיימות בשלום — ה-framework של i18n מטפל בקבצי הקטלוג בזמן build, ה-Content API מגיש ערכים מותאמים-לוקאל בזמן ריצה.

  1. בחר את שפת הבסיס שלך וסיים את הניסוח תחילה. תרגום של יעד נע הוא כאב ראש.
  2. אצול תרגומים. אל תתרגם תוך כדי תנועה — המתן עד שפיצ’ר יהיה יציב.
  3. בדוק RTL מוקדם אם אתה תומך בערבית או בעברית. באגי RTL מסתתרים עד שמסתכלים עליהם ממש.
  4. כלול lang ו-dir על <html>. דפדפנים וקוראי מסך תלויים בכך.
  5. השתמש ב-Intl לעיצוב. אל תיצור עיצוב תאריכים או מטבעות בעצמך — השתמש ב-Intl.DateTimeFormat, Intl.NumberFormat.
  • ממשק ניהול לוקאלים בתוך ה-Builder — בחר לוקאלים, ראה כיסוי תרגום, ערוך קטלוגים מבלי לצאת מ-Proyecta
  • תרגום-אוטומטי-בשמירה עבור מחרוזות חדשות
  • תבניות פרויקט מוכנות-ל-i18n עם ה-framework מחובר מראש