תַרגום ממשק

תַרגום ממשק דרופל 7.

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

הערות מקדימות

  1. התהליך עשוי לא להצליח בפעם הראשונה, אל תהיו מתוסכלים. דאגו לגיבוי לפני ביצועו, בכל מקרה.
  2. לא מומלץ לבצע את התהליך באתר המצוי תחת אכסון משותף ללא בדיקה עם הספק האם זמן הריצה של השרתים אותו הוא מספק הנו ארוך דיו על מנת לייבא את התרגומים.
  3. ישנן שתי דרכים לתרגם מחרוזות ממשק: אוטומטית וידנית. מתוארות כאן בפירוט שתי השיטות. בעיקרון עדיף להשתמש בשיטה האוטומטית ורק אם היא לא עובדת במקרה שלכם, לעבור לשיטה הידנית. היתרון בשיטה האוטומטית - בכל פעם שתתקינו רכיב חדש ייובאו התרגומים שלו אוטומטית.

הכנת תשתית

תהליך זה הנו תהליך הנדרש הן לשיטת התרגום האוטומטית והן לשיטת התרגום הידנית.

  1. גשו לעמוד הרכיבים והדליקו את רכיב Locale (או ודאו שהוא דולק).
  2. ודאו שניתן לגשת לעמוד השפות - Languages. בדרופל 7 הנתיב הוא admin/config/regional/language.
  3. על מנת שלא להגיע למצב של זמן ריצה מוגבל של שרת PHP, ערכו את קובץ php.ini. אם אתם משתמשים ב-wamp חפשו בתפריט הראשי את PHP ולחצו על פריט המשנה הקרוי php.ini. חפשו את המחרוזת max_execution_time ושנו את הערך למשהו גדול מאוד, נניח, max_execution_time = 1200 (שזה 20 דקות). להרחבה, הסברים וגישות חלופיות ראה דיון באנגלית -
    http://drupal.org/node/569004.
  4. אתחלו את השרתים. אם אתם משתמשים ב-wamp לחצו בתפריט הראשי על Restart All Services והמתינו שהצלמית תתחלף לצלמית ירוקה.

הוספת תרגום אוטומטית

  1. לחצו על הקישור Add langugae ובחרו בתיבת הגלילה את השפה הנדרשת לתרגום. לחצו על הכפתור Add language.
  2. אם ברצונכם להפוך את השפה שתרגמתם לשפת ברירת המחדל, עשו זאת כעת. שימו לב: אם תשנו בעתיד את השפה תרגומים עשויים להישבר! לכן שנו את שפת ברירת המחדל על פי הצורך הסופי של האתר.
  3. התקינו את רכיב l10n_update.
  4. נכון לכתיבת שורות אלה קיים באג ברכיב הנ"ל שמגביל את הייבוא ל-240 שניות. עבור שפות רבות מדובר בהגבלה שתתקע את תהליך התרגום, בייחוד של חבילת הליבה. שתי דרכים לפתור את הבעיה:
    1. הדרך המלוכלכת אבל הזריזה היא לערוך (כן, hack, תגידו למי שיצעק עליכם שאני הרשיתי לכם) את הקובץ l10n_update.locale.inc המצוי בתיקיית l10n_update שהתקנתם. בתחילת הקובץ תמצאו קריאה לפונקציה drupal_set_time_limit - שנו את הערך ל-1200 (20 דקות). כמובן, אם תעדכנו בעתיד את חבילת הרכיבים, תצטרכו לחזור ולערוך קובץ זה, אלא אם תוקנה כבר הבעיה.
    2. הדרך הנקייה - להתקין טלאי על פי התקדמות הפיתוח המתוארת בדיון הארוך הזה: http://drupal.org/node/569004.
  5. גשו לעמוד ממשק התרגום - Translate interface ובחרו בלשונית Update - נמצא בדרופל 7 בנתיב admin/config/regional/translate/update. בחרו בשפה שהתקנתם ולחצו על כפתור Update transaltions. המתינו בסבלנות עד להורדת הקבצים של הרכיבים השונים ושאיבת התרגומים מתוכם. במהלך העדכון תקבלו חיווי על התקדמות התהליך, למשל, Completed 7 of 36 פירושו שתורגמו עד כה 7 חבילות רכיבים מתוך 36 להם נמצאו קובצי תרגום.
  6. אם קיבלתם הודעה המכילה את הכיתוב Maximum execution time of [xxx] seconds exceeded זה אומר שהגדלת זמן הריצה שביצענו לא היה מספיק. במקרה כזה, בצעו שוב את תהליך העדכון ורכיב Localization update ישאב תרגומים נוספים. המשיכו בתהליך זה עד שכל התרגומים יישאבו ובמסך ממשק התרגום הרקע של כל הרכיבים יהיה ירוק.
  7. (אפשרי) - ניתן להגדיר שאיבת עדכונים חדשים בעת ריצת שעון העצר (cron) בעמוד admin/config/regional/language/update.

הוספת תרגום ידנית

  1. גשו לשרת לוקלייז של דרופל העולמי. למתרגמים לעברית, הרי קישור ישיר לשפה העברית: http://localize.drupal.org/translate/languages/he.
  2. לחצו על Download שנמצא בשורה של הגרסה הרצויה של דרופל.
  3. שמרו על המחשב שלכם את הקובץ (סיומת הקובץ היא po). לא חשוב היכן תשמרו, לאחר סיום פעולת יבוא הקובץ, תוכלו למחוק אותו.
  4. גשו לעמוד Translate interface. בדרופל 7 הנתיב הוא admin/config/regional/translate
  5. בחרו בלשונית Import.
  6. לחצו על כפתור בחירת הקובץ ובחרו את קובץ ה-PO ששמרתם.
  7. בטלו את ה-overlay - רק כך תוכלו לראות את הודעות השגיאה במידה שתתקבלנה.
  8. בשדה Import into בחרו את השפה אותה אתם מתרגמים.
  9. את שאר ההגדרות השאירו כמות שהן ולחצו על כפתור Import למטה. המתינו בסבלנות.
  10. מחקו את קובץ PO ששמרתם על המחשב שלכם, אין בו צורך עוד.

לאחר תרגום מוצלח

  1. תקבלו הודעות עם רקע ירוק שמדווחת כמה פרויקטים (חבילות רכיבים) עודכנו ואת שמותיהם.
  2. אתם עשויים לקבל גם הודעה עם רקע כתמתם בנוסח translation strings were skipped because they contain disallowed HTML - אם מדובר במספר קטן של תרגומים שלא יובאו, אפשר לוותר. אם הם ממש חשובים לכם, עליכם לנבור בהודעות הלוג.
  3. אם תקבלו גם אזהרות, מומלץ להעתיק ולשמור אותן במידה ולדעתכם אין הצלחה של התרגום במאת האחוזים.
  4. בדרופל 6 בלבד - בלשונית Configure שבעמוד Languages בחרו באפשרות Path prefix only.
  5. בדרופל 7 ואילך - גשו לעמוד השפות בנתיב admin/config/regional/language/configure. לחצו על לשונית Detection and Selection. סמנו את תיבת הבחירה Enabled בשורה URL. שמרו.
  6. (אפשרי) אם ברצונכם להפוך את השפה שהוספתם כברירת המחדל של האתר, גשו לעמוד Languages, סמנו אותה כברירת מחדל ולחצו על הכפתור.
  7. כעת, ביכולתם לגשת לאתר בשפה שייבאתם. אם ייבאתם עברית, למשל, ביכולתכם לגשת לעמוד החזית של האתר באמצעות הכתובת mysite.com/he.
  8. כמובן, בשפה הנכתבת מימין לשמאל, כמו עברית, יש לתבנת את האתר על מנת להתאימו לכיווניות זו.

זאת ועוד

  1. סביר להניח שלא כל המחרוזות מתורגמות, וזאת מכיוון שלא כל קהילה מספקת תרגום לכל השפות. מדובר בעבודה משותפת אך מפרכת. לכן, על מנת למלא "חורים" יש צורך בתרגום ידני של מחרוזות שלא תורגמנה. ניתן לעשות זאת באמצעות ממשק התרגום - Translate interface - בנתיב admin/config/regional/translate/translate על ידי חיפוש מחרוזת הזקוקה לתרגום. לחלופין או כשיטה משלימה, ניתן להיעזר ברכיב l10n_client.
  2. התרגום שנוסף מתרגם גם את ממשק המנהלן ולא כולם אוהבים זאת. קיים רכיב admin_language שמאפשר לעשות שימוש באנגלית גם כשאתם בעמוד ששייך לשפה אחרת.
  3. ייתכן שתהיו מעוניינים להימנע משימוש בתווים שאינם לטיניים במקומות מסוימם באתר. למשל, עבור שמות קבצים שמועלים לשרת או עבור נתיבים נרדפים. תוכלו להשתמש ברכיב התִּעֲתוּק - transliteration - שיהפוך תווים שאינם לטיניים לתווים הלטיניים המוגדרים כמקבילים להם.