תרגום אוטומטי של ממשק האתר באתרים רב לשוניים
הממשק של דרופל מתורגם להרבה שפות. איזה יופי.
היום נשאלתי: אני בונה אתר דרופל 7 שמתוכנן להכיל אנגלית ועוד 8 שפות. אם התקנתי 20 מודולים ולכולם יש תרגום לכל השפות, האם זה אומר שצריך להוריד ולייבא 160 תרגומים ידנית כדי לקבל את הממשק בכל השפות? או שיש איזשהו מכניזם אוטומטי ששולף את קבצי התרגום שיכול לחסוך ימבה זמן? כמו כן האם כל מודול עושה import של התרגומים לשפות הפעילות בזמן שמתקינים אותו? והאם כשמוסיפים שפה נעשה import של הקבצים של כל המודולים הפעילים?
בדקתי ומצאתי מספר מודולים שיכולים לעזור:
http://drupal.org/project/live_translation - Live Translation
http://drupal.org/project/l10n_update - Loalization Update
האם הם מספקים את הסחורה? אשמח לשמוע אם למישהו יש נסיון בנושא וכן מהי ההתנהלות בדרופל 7. מבטיח לסכם את התנסותי.
כמו כן, אבל האם יש מודול ששולף אוטומטית תרגום של הליבה כשמוסיפים שפה?
אמנון
- הבלוג של druvision
- חברי האתר יכולים לשלוח תגובה - כניסה , הצטרפות.


לא לשכוח המודול
לא לשכוח המודול http://drupal.org/project/i18n
פטיש
המודולים האלה לדעתי גורמים להרבה בלבול אצל המפתחים, כי במקום שילמדו העקרונות והשיטות הבסיסיות של i18n הם מתחילים להשתמש בפטיש לכל בעיה למרות שרוב הבעיות ניתן לפתור בצורה חכמה ויעילה רק עם i18n בלי להכביד על האתר ועל המשתמש עם מודולים נוספים וממשקים מיותרים
זה דומה למישהו שעדיין לא הספיק ללמוד על control structures כמו if ו while וישר דוחפים לו exceptions
חוץ מזה שלפעמים המודולים האלה תוקעים תהליכים בדרופל בזמן שמנהלים תקשורת עם שרתי התרגום והמפתח לא מבין מה הסיבה שהאתר נתקע בדפי ניהול מסוימים
yakoub abaya
תרגום מיותר
בנוסף לדעתי ברוב המקרים אין צורך בתרגום כל המודולים המותקנים אלה רק הדפים שהם חלק מחווית משתמש האתר ולא דפי הניהול והבניה שרלוונתים רק
עבור מפתח האתר, לכן 160 תרגומים הוא מספר לא מציאותי
תרגום זה דבר הרבה יותר פשוט ברוב המקרים ויש מקרים בודדים נדירים שיכול להיות שהורדה אוטומטית של קבצי תרגום הוא יעיל.
yakoub abaya
למודולים רבים אכן יש צורך בתרגום
למודולים רבים אכן יש צורך בתרגום - לפחות ל-Front שלהם.
באתר ממוצע יש הרבה יותר מ-20 מודולים. אני בטוח שלפחות 20 מתוכם משפיעים על חווית המשתמש ועבורם יש צורך לפחות בתרגום חלקי - גם עבור תרגום חלקי צריך להוריד את קובץ התרגום! אם המדובר על 8 שפות, יש לנו אכן 160 תרגומים שצריך להוריד. ועדיין לא קיבלתי תשוה לשאלה המקורית שלי - איך נכון לעשות זאת. האם יש מודול (ואולי drush) שעושה זאת? או שצריך להמציא את הגלגל מחדש...
ובכן, מצאתי איך עושים זאת. עם drush כמובן:
http://drupal.org/node/1163670
http://drupal.org/node/1057150
תודה על הקשבתך...
-
אמנון לבב - מפתח ויועץ דרופל
Druvision - פתרונות יצירתיים בקוד פתוח ומובייל
תשובה
. ועדיין לא קיבלתי תשוה לשאלה המקורית שלי - איך נכון לעשות זאת. האם יש מודול (ואולי drush) שעושה זאת? או שצריך להמציא את הגלגל מחדש...
אין תשובה כי לדעתי לא הייתה אמור להגיע למצב הזה מלכתחילה.
160 קבצי תרגומים אומר שיש בעיה בתכנון הפרויקט ולא אומר שצריך להמציא פעולה ב drush שהיא מיותרת לחלוטין וסביר
שעם הזמן יתגלו בה באגים ואנשים יזנחו לפתח אותה לגרסאות החדשות של דרופל
yakoub abaya
עובד פגז. רק לא מספיק מתועד
התקנתי את מודול localization update. עכשיו, כל שפה שאני מוסיף, דרופל אוטומטית שולף את התרגומים עבור כל המודולים שמותקנים. כולל עבור הליבה. כמו כן עבור כל מודול שאני מוסיף, דרופל שולף אוטומטית את התרגומים של המודול עבור כל השפות הפעילות.
ואם רוצים לעדכן אתר שכבר קיים, אפשר להפעיל באופן ידני drush l10n-update כדי לשלוף את כל התרגומים העדכניים. כמובן שמספיקה שליפה חד פעמית. אבל אם מתעקשים אפשר להגדיר גם שתתבצע שליפה כל שבוע של עדכונים.
-
אמנון לבב - מפתח ויועץ דרופל
Druvision - פתרונות יצירתיים בקוד פתוח ומובייל
קונפליקט
מה קורה אם מחרוזת נמצאת במודול "א" וגם במודול "ב", ומנהל האתר בכלל מצא שהתרגום בשני המודולים לא מתאים והזין תרגום משלו למחרוזת ?
האם העדכון האוטומתי ידרוס את התרגום שהמנהל הזין?
yakoub abaya
mode
אכן יש בדפי הניהול של המודול localization update לבחור אם לדרוס מחרוזות קיימות בעדכון או לשמור עליהם, אז אין בעיה ..
yakoub abaya