דף הבית » חדשות ועדכונים

שינויים במערכת התרגום בוורדפרס 4.6

15 באוגוסט 2016 | מאת רמי | 4 תגובות | תגיות: ,

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

תרגום וורדפרס: קל, פשוט, וזמין לכולם

תרגום וורדפרס: קל, פשוט, וזמין לכולם

רקע

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

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

יש לציין שהמהלך הזה היה מאוד מוצלח. מצד אחד, גודל התוסף הממוצע ירד בעשרות אחוזים והוריד עומס רב משרתי wordpress.org, כי קבצי po/mo פעמים רבות 50%-80% מגודל התוסף (עשרות שפות מאות ואלפי מחרוזות). מצד שני, במעבר לתרגום קהילתי, מפתחי תוספים/תבניות ראו איך המשתמשים שלהם החלו לתרגם את התוספים לעשרות שפות חדשות. כולם הרוויחו.

שיפורים בוורדפרס 4.6

מפתחי הליבה לא נרדמו, בגרסה 4.6 מנגנון התרגום השתפר אפילו יותר! אם התוסף מתאחסן בספרייה הרשמית ומשתמש במנגנון התרגום של וורדפרס, התוסף כבר לא צריך לטעון את פונקציות התרגום load_plugin_textdomain() ו- load_theme_textdomain(), וורדפרס מבצע את זה באופן אוטומטי!!!

מעבר לכך, אם בתוסף/בתבנית בכלל לא הוגדר textdomain, אז מעכשיו וורדפרס יודעת לטפל גם בזה. היא תשתמש בסלאג של התוסף כ-textdomain. המשמעות היא שמעכשיו ניתן לתרגם גם תוספים ישנים שבכלל לא הגדירו textdomain.

עוד שדרוג נוגע לתוספים שבכל זאת מצרפים את קבצי התרגום לתוסף עצמו. עד כה, אם לתוסף יש תרגומים ב-translate.wordpress.org וגם קבצי תרגום מצורפים, אז המערכת טענה את קבצי התרגום המצורפים בתוך קבצי התוסף. מעכשיו, תינתן קדימות לתרגומים הקהילתיים ולא לקבצי התרגום שבאים עם התוסף. יש פה היגיון מסויים, בדרך כלל התרגום השיתופי-קהילתי עדכני יותר. ולא לשכוח שקיים מנגון מובנה המעדכן את התרגומים בכל פעם שמבצעים תיקון של תרגום כלשהו, המחרוזת תתעדכן אוטומטית בכל אתרי הוורדפרס בעולם בתוך 12 שעות.

איך זה מתבצע בפועל

כל 12 שעות יש בדיקת wp-cron מול שרתי וורדפרס.אורג כדי לבדוק האם יש עדכונים. אם כן, המחרוזות העדכניות יורדות לספריית wp-content/languages, שם יש תת-ספריות נפרדות לתוספים ולתבניות.

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

מפתחים שימו לב

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

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

תחזית לעתיד

מישהו זוכר שכבר בשנת 2013 חזיתי שכל התוספים והתבניות יעברו להשתמש ב-translate.wordpress.org ?

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

מאת רמי

אחראי על אתר וורדפרס בעברית ועל תרגום ושחרור גרסאות וורדפרס בעברית. מפתח ליבה, בכל גרסה החל מגרסה 2.8, מפתח מוביל בגרסה 4.4 ובגרסה 4.6. מספק שירותי פיתוח אתרים, פיתוח תוספי וורדפרס לסטרטאפים ופיתוח כלים למפתחי וורדפרס - GenerateWP.com.

4 תגובות »

  • חתול כותב :

    לא הצלחתי להבין איך זה עובד. איפה התרגום של התוספים שלי עכשיו?

  • רמי כותב :

    אם התוסף תורגם דרך translate.w.org הוא יורד אל הספרייה:

    wp-content/languages/plugins/plugin-he_IL.mo

  • izem כותב :

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

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

  • רמי כותב :

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

    ואז אפשר לעשות יבוא של התרגומים מקבצי ה-PO/MO שלכם אל התרגום הקהילתי. ואז התרגומים זהים.

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

הוסף תגובה !

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

תגיות HTML מורשות לשימוש:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>