דלג לתוכן

מתרגם JSON ששומר על המבנה | כלי i18n חינמי

מתרגם JSON חינמי ששומר על המבנה שלך. תרגם קבצי i18n, תגובות API, וJSON מקונן תוך שמירה על מפתחות, טיפוסי נתונים ועיצוב. מושלם עבור i18next ויישומים רב-לשוניים.

מתרגם שומר מבנה JSON

כלי זה מתרגם את תוכן אובייקטי JSON תוך שמירה על המבנה שלהם. הדבק את ה-JSON שלך בחלונית השמאלית, בחר שפת יעד, וראה את הפלט המתורגם בחלונית הימנית.

הפלט המתורגם יופיע כאן...

כיצד להשתמש

  1. הדבק את אובייקט ה-JSON שלך בשדה JSON המקור.
  2. בחר את שפת היעד מתפריט הנפתח.
  3. ה-JSON המתורגם יופיע אוטומטית בחלונית הימנית.
  4. לחץ על כפתור ההעתקה כדי להעתיק את ה-JSON המתורגם ללוח שלך.
מחשבון טעינה...
📚

תיעוד

מהו מתרגם שומר מבנה JSON?

האם ניסית להעתיק JSON לתרגום של גוגל ונתקלת במפתחות שבורים, סוגריים חסרים או תחביר מעוות? זו בדיוק הבעיה שכלי זה פותר.

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

זה מה שהופך כלי זה לשונה מכלי תרגום רגילים: כאשר אתה מתרגם קובץ i18n עם 50+ מפתחות מקוננים, אתה צריך שהמבנה יישאר זהה כך שהקוד שלך יוכל עדיין להתייחס אל user.profile.displayName בספרדית, צרפתית או יפנית. שבירת המבנה תגרום לך לנסות לתקן באגים במשך שעות.

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

כיצד עבודת שימור מבנה JSON

מדוע שימור מבנה חשוב

כאשר אתה עובד עם תרגום JSON, אתה בדרך כלל מתמודד עם אחד מהתרחישים הבאים:

  • קבצי i18n שם האפליקציה שלך מצפה ש-en.json ו-fr.json יהיו בעלי מפתחות זהים
  • תגובות API שצריכות מבנה עקבי בשפות שונות לצורך עיבוד לקוח
  • קבצי תצורה שבהם שינוי שם מפתח שובר את האפליקציה כולה
  • יצוא מסד נתונים שם קשרים תלויים בשמות שדות ספציפיים

האתגר: JSON אינו רק טקסט. זהו מידע מובנה עם סכמה שהקוד שלך מסתמך עליה. שינוי "userName" ל-"nombreUsuario" בזמן תרגום יגרום לאפליקציה לזרוק שגיאת undefined.

כיצד תהליך התרגום עובד

הנה מה שקורה מאחורי הקלעים בעת תרגום JSON:

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

2. חציית רקורסיבית החל מהשורש, האלגוריתם עובר דרך כל צומת בעץ ה-JSON. עבור כל רכיב, הוא בודק את סוג הנתונים:

  • מחרוזת? מוסיף אותה לתור תרגום
  • מספר, בוליאני, ריק? מדלג עליו לחלוטין
  • אובייקט או מערך? חוזר באופן רקורסיבי

3. תרגום בטוח מבחינת טיפוס רק ערכי מחרוזת נשלחים לממשק תרגום. "quantity": 42 נשאר 42, לא "ארבעים ושתיים". "isActive": true נשאר true, לא "אמת".

4. שימור מפתחות כל מפתחות האובייקט נשארים בשפה המקורית. זה קריטי כי translations.header.welcomeMessage חייב להיות אותו נתיב בכל קובץ שפה.

5. הרכבת מבנה מחדש מחרוזות מתורגמות מוכנסות בדיוק באותם מיקומים, תוך שמירה על כל רמות הטמעה, אינדקסי מערך והיררכיות אובייקטים.

מלכודת נפוצה: חלק מהמפתחים מנסים לעשות JSON.stringify() לאובייקט, לתרגם את המחרוזת כולה, ואז לנתח אותה חזרה. זה שובר את המבנה כי המתרגם משנה מפתחות, סוגריים וטקסט. הגישה הרקורסיבית מונעת זאת לחלוטין.

שימוש בכלי תרגום JSON תוך שמירה על המבנה

מדריך שלב אחר שלב

1. הדבק את ה-JSON שלך העתק את אובייקט ה-JSON שלך והדבק בחלונית השמאלית. הכלי מטפל בכל JSON תקף - בין אם מדובר באובייקט פשוט עם 5 מפתחות או במבנה מקונן עמוק עם מערכים ורמות מרובות.

2. בחר שפת יעד בחר מתפריט הנפתח: ספרדית, צרפתית, גרמנית, איטלקית, פורטוגזית, סינית, יפנית, קוריאנית, רוסית ועוד. אם אתה מתרגם עבור פרויקט i18next, התאם את קוד השפה שהפריימוורק שלך מצפה.

3. קבל תרגום מיידי פלט התרגום מופיע אוטומטית בחלונית הימנית. אין צורך בכפתור "תרגם" - הוא מעבד מיד עם JSON תקף ושפה נבחרת.

4. העתק ושימוש לחץ על כפתור "העתק" כדי לקחת את ה-JSON המתורגם. הוא מוכן להדבקה ישירות בפרויקט - ללא צורך בניקוי.

5. נקה לתרגום הבא לחץ על "נקה הכל" כשאתה מוכן לתרגם קובץ אחר. הכלי מאפס את שני החלונות מיידית.

בעיות נפוצות ופתרונות

שגיאת "פורמט JSON לא תקין" תראה זאת כאשר יש בעיית תחביר. החשודים הרגילים:

  • חסר פסיק בין זוגות מפתח-ערך
  • פסיק מיותר אחרי הפריט האחרון (תקף ב-JavaScript, לא ב-JSON)
  • מרכאות יחידות במקום כפולות
  • תווים מיוחדים שאינם מוסווים במחרוזות

תיקון מהיר: הרץ את ה-JSON שלך דרך מאמת כמו JSONLint לפני ההדבקה.

תרגום נכשל ללא הודעה אם חלונית הפלט נשארת ריקה:

  • בדוק את חיבור האינטרנט - תרגום דורש גישת API
  • וודא שבחרת שפת יעד
  • נסה עם קטע JSON קטן יותר כדי לבודד את הבעיה

תוצאות לא צפויות בתרגום תרגום ממוחשב עובד טוב עבור ביטויים סטנדרטיים אך מתקשה עם:

  • מונחים טכניים או מונחים ספציפיים לתחום
  • שמות מותגים (שצריכים להישאר ללא תרגום בדרך כלל)
  • תחביר מחליפי כמו {{username}} או %s

עבור יישומים בייצור, השתמש בכלי זה כמעבר ראשוני, ולאחר מכן תן למדבר שפת אם לבדוק תוכן ספציפי לתחום או פונה ללקוח.

טיפים מקצועיים לתוצאות טובות יותר

שמור מחרוזות טכניות בנפרד אם ה-JSON שלך מערבב טקסט פונה למשתמש עם מזהים טכניים, שקול לחלק אותם. לדוגמה:

1{
2  "display": {"welcome": "ברוכים הבאים"},
3  "config": {"apiKey": "abc123", "endpoint": "https://api.example.com"}
4}
5

תרגם את אובייקט ה-display בנפרד כדי להימנע מעיבוד ערכי ה-config בטעות.

השתמש בהקשר במחרוזות שלך "שלח" יכול להתורגם אחרת בהתאם להקשר. "שלח טופס" או "שלח תשלום" נותן למתרגמים (אנוש או ממוחשב) הקשר טוב יותר לתרגום מדויק.

בדוק עם נתונים אמיתיים לפני תרגום קובץ i18n שלם עם 500+ מפתחות, בדוק עם דגימה קטנה הכוללת את כל סוגי הנתונים שלך - מחרוזות, מספרים, אובייקטים מקוננים, מערכים.

דוגמאות קוד

תרגום JSON עם JavaScript

1// דוגמה כיצד ניתן לממש פונקציונליות דומה ב-JavaScript
2function translateJsonStructure(jsonObj, targetLanguage) {
3  // פונקציית עזר לתרגום מחרוזת
4  function translateString(str, lang) {
5    // במימוש אמיתי, זה יקרא לממשק תרגום
6    return `[${lang}] ${str}`;
7  }
8  
9  // פונקציה רקורסיבית לסריקה ותרגום JSON
10  function processNode(node) {
11    if (node === null) return null;
12    
13    if (typeof node === 'string') {
14      return translateString(node, targetLanguage);
15    }
16    
17    if (Array.isArray(node)) {
18      return node.map(item => processNode(item));
19    }
20    
21    if (typeof node === 'object') {
22      const result = {};
23      for (const key in node) {
24        result[key] = processNode(node[key]);
25      }
26      return result;
27    }
28    
29    // החזרת מספרים, בוליאנים וכו' ללא שינוי
30    return node;
31  }
32  
33  return processNode(jsonObj);
34}
35
36// שימוש לדוגמה
37const sourceJson = {
38  "product": {
39    "name": "אוזניות אלחוטיות",
40    "description": "אוזניות אלחוטיות באיכות גבוהה עם ביטול רעשים",
41    "features": ["Bluetooth 5.0", "חיי סוללה של 40 שעות", "עיצוב מתקפל"],
42    "price": 99.99,
43    "inStock": true
44  }
45};
46
47const translatedJson = translateJsonStructure(sourceJson, "es");
48console.log(JSON.stringify(translatedJson, null, 2));
49

תרגום JSON עם Python

1import json
2
3def translate_json_structure(json_obj, target_language):
4    """
5    מתרגם ערכי מחרוזת באובייקט JSON תוך שמירה על המבנה.
6    
7    Args:
8        json_obj: אובייקט JSON שנותח
9        target_language: קוד שפת היעד (למשל, 'es', 'fr')
10        
11    Returns:
12        אובייקט JSON מתורגם עם מבנה שמור
13    """
14    def translate_string(text, lang):
15        # במימוש אמיתי, זה יקרא לממשק תרגום
16        return f"[{lang}] {text}"
17    
18    def process_node(node):
19        if node is None:
20            return None
21        
22        if isinstance(node, str):
23            return translate_string(node, target_language)
24        
25        if isinstance(node, list):
26            return [process_node(item) for item in node]
27        
28        if isinstance(node, dict):
29            result = {}
30            for key, value in node.items():
31                result[key] = process_node(value)
32            return result
33        
34        # החזרת מספרים, בוליאנים וכו' ללא שינוי
35        return node
36    
37    return process_node(json_obj)
38
39# שימוש לדוגמה
40source_json = {
41    "user": {
42        "name": "ג'יין סמית",
43        "bio": "מפתחת תוכנה ותורמת בקוד פתוח",
44        "skills": ["JavaScript", "Python", "React"],
45        "active": True,
46        "followers": 245
47    }
48}
49
50translated_json = translate_json_structure(source_json, "fr")
51print(json.dumps(translated_json, indent=2))
52

תרגום JSON עם PHP

1<?php
2/**
3 * מתרגם מבנה JSON תוך שמירה על המבנה המקורי
4 * 
5 * @param mixed $jsonObj אובייקט JSON שנותח
6 * @param string $targetLanguage קוד השפה היעד
7 * @return mixed אובייקט JSON מתורגם
8 */
9function translateJsonStructure($jsonObj, $targetLanguage) {
10    // פונקציית עזר לתרגום מחרוזת
11    function translateString($text, $lang) {
12        // במימוש אמיתי, זה יקרא לממשק תרגום
13        return "[$lang] $text";
14    }
15    
16    // פונקציה רקורסיבית לעיבוד כל צומת
17    function processNode($node, $lang) {
18        if ($node === null) {
19            return null;
20        }
21        
22        if (is_string($node)) {
23            return translateString($node, $lang);
24        }
25        
26        if (is_array($node)) {
27            // בדיקה אם זהו מערך אסוציאטיבי (אובייקט) או מערך מסודר
28            if (array_keys($node) !== range(0, count($node) - 1)) {
29                // מערך אסוציאטיבי (אובייקט)
30                $result = [];
31                foreach ($node as $key => $value) {
32                    $result[$key] = processNode($value, $lang);
33                }
34                return $result;
35            } else {
36                // מערך מסודר
37                return array_map(function($item) use ($lang) {
38                    return processNode($item, $lang);
39                }, $node);
40            }
41        }
42        
43        // החזרת מספרים, בוליאנים וכו' ללא שינוי
44        return $node;
45    }
46    
47    return processNode($jsonObj, $targetLanguage);
48}
49
50// שימוש לדוגמה
51$sourceJson = [
52    "company" => [
53        "name" => "פתרונות טכנולוגיה גלובליים",
54        "description" => "חברת פיתוח תוכנה חדשנית",
55        "founded" => 2010,
56        "services" => ["פיתוח אתרים", "אפליקציות סלולר", "פתרונות ענן"],
57        "active" => true
58    ]
59];
60
61$translatedJson = translateJsonStructure($sourceJson, "de");
62echo json_encode($translatedJson, JSON_PRETTY_PRINT);
63?>
64

שימושים עולמיים

קבצי i18n לאפליקציות אינטרנט

רוב הפריימוורקים המודרניים כמו Next.js, React או Vue מאחסנים תרגומים בפורמט JSON. כאשר אתה צריך להוסיף שפה חדשה לאפליקציה שלך, אתה ניצב בפני בחירה: להעתיק ולתרגם ידנית כל מפתח (מה שעלול לגרום לשגיאות), או להשתמש בכלי זה כדי ליצור טיוטה ראשונית בדקות.

תרחיש אמיתי: לאפליקציה שלך יש en.json עם 200+ מפתחות תרגום בקטגוריות מקוננות - ניווט, טפסים, הודעות שגיאה, tooltips. אתה צריך גרסאות בצרפתית ובגרמנית עד לספרינט הבא.

קלט (en.json):

1{
2  "common": {
3    "welcome": "Welcome to our application",
4    "login": "Log in",
5    "signup": "Sign up",
6    "errorMessages": {
7      "required": "This field is required",
8      "invalidEmail": "Please enter a valid email address"
9    }
10  }
11}
12

תרגם לצרפתית, קבל fr.json עם מבנה זהה. הקוד שלך עדיין מפנה אל t('common.errorMessages.required') ללא שינויים.

מה שמצאתי שעובד טוב: צור תרגומים עם כלי זה, ואז תן לחבר צוות דו-לשוני לבדוק את המונחים הטכניים ותוויות הכפתורים. זה יעזור לזהות מקרים שבהם "Submit" עשוי להזדקק לתרגומים שונים עבור "Submit form" לעומת "Submit payment."

לוקליזציה של תגובות API

בונה API ששירת מספר מדינות? אתה צריך מבנים עקביים בתגובות בכל השפות. API של התראות עשוי להחזיר:

1{
2  "status": "success",
3  "notification": {
4    "title": "Order Shipped",
5    "message": "Your order #12345 has been shipped",
6    "priority": 1,
7    "timestamp": 1678901234
8  }
9}
10

אפליקציית הנייד שלך מנתחת את notification.title ו-notification.message. אם התרגום הצרפתי משנה את מבנה המפתחות, האפליקציה תיתקע עבור משתמשים צרפתים.

כלי זה מבטיח ש-notification.title יישאר notification.title בכל שפה, עם רק ערכי המחרוזת המתורגמים. קוד הלקוח שלך יעבוד באופן זהה בכל האזורים.

מגבלה אחת לציון: תרגום אוטומטי לא מבין את התחום שלך. "Shipped" בהקשר של מסחר אלקטרוני עשוי להיתרגם אחרת מאשר בהקשר של לוגיסטיקה או ימאות. עבור API הפונה ללקוחות, סקור את הפלט לפני הפריסה.

תרגום תוכן של CMS ללא ראש

פלטפורמות CMS ללא ראש כמו Contentful או Strapi לעתים קרובות מייצאות תוכן כ-JSON. כאשר יש לך 50 פוסטי בלוג עם מטא-נתונים מובנים (מחבר, תגיות, כתובות URL של תמונות מומלצות, תאריכי פרסום), אתה רוצה לתרגם את הגוף והכותרת מבלי לגעת במטא-נתונים.

יצוא טיפוסי כולל מחרוזות תוכן ותצורה:

  • תוכן: גוף המאמר, כותרת, תקציר
  • מבנה: מזהי מחברים, נתיבי תמונות, סלאגים של קטגוריות, חותמות זמן

תרגום ידני מסכן שינוי סלאג מ-technology ל-tecnología, ושובר את הניתוב. תרגום השומר על המבנה מטפל רק בשדות התוכן.

קבצי תצורה להפצות רב-אזוריות

מפרסם ברחבי אזורים? קבצי התצורה שלך עשויים להזדקק למחרוזות מקומיות תוך שמירה על נקודות קצה, אישורים ודגלי תכונות זהים:

1{
2  "region": "eu-west",
3  "welcomeMessage": "Welcome to our service",
4  "endpoint": "https://api.eu.example.com",
5  "retryAttempts": 3,
6  "features": {"darkMode": true}
7}
8

תרגם את welcomeMessage לגרמנית תוך השארת endpoint, retryAttempts, ו-features ללא שינוי.

השוואת גישות תרגום

שיטהמתאים ביותרמהירותדיוקשמירה על מבנהעלות
כלי זהיצירת קבצי i18n מהירה, אב-טיפוס, כלים פנימייםמיידיטוב לתוכן סטנדרטישמירה של 100%חינם
תרגום Google (העתקה/הדבקה)משפטים בודדים, טקסט לא טכנימיידימשתנהשובר JSONחינם
תרגום מקצועיתוכן פונה לקהל, מסמכים משפטיים, שיווקימיםמעולהנדרשת עבודה ידנית0.08-0.15$ למילה
מערכות ניהול תרגום (Lokalise, Phrase)יישומי ארגון, תהליכי עבודה שיתופייםשעות-ימיםמעולה עם סקירהתמיכת JSON מובנית$$$ ומעלה

מתי להשתמש בכלי זה: פרויקטים בשלב ראשוני, יצירת טיוטות לבדיקה, יישומים פנימיים שבהם תרגום מושלם אינו קריטי.

מתי להשקיע בתרגום מקצועי: תוכן פונה לקהל, טקסטים משפטיים/תקינה, מסרים מותגיים, או כאשר הגוון התרבותי חשוב יותר מהירות.

שיקולים טכניים ומקרי קצה

מה מתורגם (ומה לא)

הכלי משתמש בבדיקת טיפוס כדי לקבוע מה לתרגם:

מתורגם:

  • ערכי מחרוזת: "Welcome""ברוכים הבאים"
  • מחרוזות במערכים: ["Hello", "World"]["שלום", "עולם"]
  • מחרוזות בכל רמת עומק

לא מתורגם:

  • מספרים: 42, 3.14, -10 נשארים ללא שינוי
  • בוליאנים: true ו-false נשארים כפי שהם
  • Null: null נשאר null
  • מפתחות אובייקט: "userName" כמפתח נשאר "userName"
  • מחרוזות ריקות: "" נשאר ""

טיפול בתווים מיוחדים

יוניקוד ואימוג'ים הכלי מטפל ב-UTF-8 בצורה נכונה, כך שאימוג'ים ותווים לא-לטיניים עובדים בסדר:

1{"greeting": "👋 Hello"}
2

מתורגם לעברית כך:

1{"greeting": "👋 שלום"}
2

רצפי בריחה רצפי בריחה של JSON (\n, \t, \") נשמרים:

1{"message": "Line 1\nLine 2"}
2

ה-\n נשאר שלם בתרגום.

מציינים הנה בעיה פוטנציאלית: אם המחרוזות שלכם מכילות מציינים כמו {username} או %s, הם עלולים להתורגם או להסודר מחדש. בשפות כמו ערבית או עברית עם טקסט מימין לשמאל, מיקומי המציינים יכולים להשתנות. בדקו אלה בקפידה.

ביצועי JSON גדול

הכלי המבוסס דפדפן מטפל בקבצי i18n טיפוסיים (עד 500 קילובייט) ללא בעיות. עבור סטים גדולים יותר:

  • 500 קילובייט - 2 מגהבייט: עובד אך עלול להיות איטי בדפדפן
  • מעל 2 מגהבייט: שקלו לפצל לחלקים לוגיים (למשל, קבצים נפרדים לכל תכונה או מקטע)

זיכרון הדפדפן הוא הגורם המגביל, לא האלגוריתם עצמו.

שאלות נפוצות

כיצד זה שונה מהדבקת JSON לתרגום Google?

Google Translate מתייחס ל-JSON כטקסט פשוט, מה שאומר שהוא מנסה לתרגם הכל - כולל מפתחות, תווי תחביר וערכים מספריים. תקבל פלט כמו:

1{ "nom d'utilisateur": "Jean Dupont", "âge": "vingt-cinq" }
2

שימו לב כיצד "username" הפך ל-"nom d'utilisateur" והמספר 25 הפך למחרוזת "vingt-cinq"? הקוד שלכם נשבר מיידית.

כלי זה מבין את מבנה JSON ומתרגם רק ערכי מחרוזת, תוך השארת מפתחות וטיפוסי נתונים אחרים כפי שהם.

האם הוא יטפל ב-JSON עמוק עם מערכים?

כן. האלגוריתם הרקורסיבי מעבד כל רמת עומק:

1{
2  "users": [
3    {"name": "John", "roles": ["admin", "editor"]},
4    {"name": "Jane", "roles": ["viewer"]}
5  ]
6}
7

הוא מתרגם את כל ערכי המחרוזת ("John", "Jane", "admin", "editor", "viewer") תוך שמירה על המבנה המדויק.

מה אם ל-JSON שלי יש תוכן באנגלית ותוכן מתורגם כבר?

הכלי מתרגם כל מחרוזת שהוא מוצא, גם אם חלקן כבר בשפת היעד. אם אתם מוסיפים מפתחות חדשים לקובץ תרגום קיים, תרגמו רק את החלק החדש בנפרד, ואז מזגו את התוצאות.

האם אני יכול להשתמש בזה לקבצי i18next או react-intl?

בהחלט. מבנה הפלט תואם למה שהמסגרות הללו מצפות. קובץ JSON של i18next כמו:

1{"translation": {"welcome": "Hello", "goodbye": "Goodbye"}}
2

הופך ל:

1{"translation": {"welcome": "Hola", "goodbye": "Adiós"}}
2

קריאות t('translation.welcome') שלכם נשארות ללא שינוי.

עד כמה תרגום אוטומטי מדויק עבור תוכן טכני?

זה תלוי בהקשר:

  • טקסט UI כללי: "Save", "Cancel", "Submit" → בדרך כלל מדויק
  • מונחים טכניים: "webhook", "OAuth2", "idempotent" → עלול להיות מתורגם בצורה שגויה או להישאר כפי שהוא
  • מונחים ספציפיים לתחום: "patient record" (רפואי) לעומת "patient" (סבלנות) → הקשר לעתים קרובות מפוספס

עבור אפליקציות בייצור, השתמשו בזה כצעד ראשון, ולאחר מכן בקשו מישהו לבדוק מונחים טכניים וספציפיים לתחום.

מה לגבי שפות עם מערכות תווים שונות (סינית, ערבית, רוסית)?

הכלי מטפל ב-Unicode כראוי, כך שכל מערכות התווים עובדות. דבר אחד לשים לב: ערבית ועברית הן משמאל לימין (RTL), מה שיכול להשפיע על אופן הופעת מחליפי מקום במחרוזות מתורגמות. מבנה ה-JSON נשאר תקין, אבל בדקו את הטקסט המתורגם לקריאות.

האם הוא ישמור על העיצוב שלי (הזחה, שורות)?

הפלט הוא JSON תקף, אבל העיצוב (רווחים, הזחה) עשוי להיות שונה מהקלט שלכם. אם אתם צריכים עיצוב ספציפי, העבירו את הפלט דרך מעצב JSON עם ההגדרות המועדפות עליכם.

האם אני יכול לתרגם ערכי תצורה כמו כתובות URL או מפתחות API?

הכלי מתרגם כל מחרוזת, כולל כתובות URL וערכי תצורה. למניעת זאת:

  1. פצלו את ה-JSON לתוכן למשתמש ותצורה
  2. תרגמו רק את קטע התוכן
  3. השאירו תצורה ללא תרגום

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

האם זה חינם? האם יש הגבלות קצב?

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

מקורות וקריאה נוספת

להבנה עמוקה יותר של מבנה JSON, תקני בינאום ושיטות עבודה מומלצות:

התחל תרגום קבצי JSON שלך

צריך ליצור במהירות קבצי תרגום עבור האפליקציה הרב-לשונית שלך? הדבק את ה-JSON שלך, בחר שפת יעד וקבל תרגומים מיידיים תוך שמירה על המבנה. עובד עם i18next, react-intl, vue-i18n וכל מסגרת המצפה למבנה JSON עקבי בין שפות.

התחל תרגום עכשיו: