
PolyLingo לעומת Polylang: מה ההבדל ומתי להשתמש בכל אחד
By Robert M
PolyLingo לעומת Polylang: מה ההבדל ומתי להשתמש בכל אחד
אם הגעת לכאן, סביר להניח שאתה באחת משתי מצבים: אתה מרוצה מ-Polylang בתוך וורדפרס אך תוהה אם יש משהו מקביל לפרויקט שאינו על וורדפרס, או שאתה עובר לגמרי מוורדפרס ומנסה להבין מה קורה להגדרת הרב-לשונית שלך.
פוסט זה עונה על שתי השאלות ישירות. נסקור מה כל כלי עושה בפועל, איפה כל אחד מתאים, ואיך לבחור ביניהם.
מה זה Polylang (ומה זה לא)
Polylang הוא תוסף וורדפרס. זה אחד התוספים הרב-לשוניים הטובים ביותר באקוסיסטם של וורדפרס. הוא מנהל מתגי שפה, מאפשר ליצור גרסאות מתורגמות של פוסטים ודפים, מטפל בתגי hreflang ומשתלב היטב עם עורך הבלוקים של וורדפרס. אם אתה מפעיל אתר וורדפרס, זה כלי רציני ומתוחזק היטב ויש סיבה טובה שיש לו מיליוני התקנות פעילות.
המגבלה היא כבר בתיאור: זה תוסף וורדפרס. אין לו API שניתן לקרוא לו מחוץ לוורדפרס. אין לו מושג של קובץ locale ב-JSON, קובץ תוכן Markdown או תבנית HTML בפרויקט Next.js. כל המודל שלו מניח שהתוכן חי במסד הנתונים של וורדפרס ומוצג על ידי וורדפרס.
זו לא ביקורת. זו פשוט ההיקף של הכלי.
מה זה PolyLingo
PolyLingo הוא API לתרגום. אתה שולח לו תוכן (טקסט פשוט, Markdown, JSON או HTML) והוא מחזיר גרסאות מתורגמות בכל שפה שתבקש, בבקשה אחת. אין לו דעה על מערכת ניהול התוכן שלך, המסגרת שלך או הגדרת הפריסה שלך. הוא עובד בכל מקום שבו ניתן לבצע בקשת HTTP.
מטרת העיצוב המרכזית היא שמירת הפורמט. רוב API התרגום בנויים סביב משפטים: אתה שולח מחרוזת, מקבל מחרוזת בחזרה. המודל הזה מתפרק מהר כאשר לתוכן שלך יש מבנה. הדבק קובץ locale JSON בשירות תרגום טיפוסי ותקבל שמות מפתחות מתורגמים, מפרידים פגומים או טקסט במקום אובייקט. PolyLingo מתייחס למבנה כאל אזור אסור. רק ערכי המחרוזת משתנים; כל השאר חוזר בדיוק כפי שנשלח.
דוגמה מוחשית. אתה שולח את זה:
{"btn": {"save": "Save", "cancel": "Cancel"}}
מתרגם שמבוסס על משפטים עשוי להחזיר לך:
{"button": {"save": "Guardar", "cancel": "Cancelar"}}
המפתח btn הפך ל-button. זה ישבור את האפליקציה שלך. PolyLingo נותן לך:
{"btn": {"save": "Guardar", "cancel": "Cancelar"}}
המפתחות נשארים ללא שינוי. רק הערכים מתורגמים.
אותו עיקרון חל על Markdown (כותרות נשארות ככותרות, בלוקי קוד נשארים כפי שהם, כתובות URL של קישורים לא משתנות) ו-HTML (תגים ותכונות נשמרים, רק צמתים טקסט ותכונות מתאימות מתורגמות).
ההבדל האמיתי: היקף
הדרך הפשוטה ביותר לומר זאת:
Polylang מנהל תוכן רב-לשוני בתוך וורדפרס. זו שכבת CMS. הוא מטפל באיזה פוסט הוא הגרסה הספרדית של איזה פוסט באנגלית, מייצר מתגי שפה ושומר על סנכרון התרגומים כשאתה מעדכן תוכן.
PolyLingo מתרגם תוכן מובנה דרך API. זו שכבת תרגום. אתה מזין לו תוכן, הוא מחזיר תרגומים. מה שאתה עושה עם התרגומים האלה זה תלוי בך.
הם פותרים בעיות סמוכות, לא את אותה הבעיה. לכן ההשוואה היא לא באמת "מה יותר טוב" אלא "איזה בעיה יש לי."
מתי להשתמש ב-Polylang
- האתר שלך פועל על וורדפרס ואתה רוצה להישאר בוורדפרס
- אתה צריך זרימת עבודה לניהול תוכן: עורכים שמחליפים בין גרסאות שפה, מעקב אחר מצב התרגום, מתגי שפה בתבנית
- אינך מפתח ואתה רוצה פתרון מבוסס ממשק משתמש
- אתה משתמש ב-WooCommerce וצריך ניהול תרגום מוצרים בתוך וורדפרס
Polylang מצוין בכל אלה. אם וורדפרס הוא הסטאק שלך, זה הכלי הנכון.
מתי להשתמש ב-PolyLingo
- אתה בונה ב-Next.js, Nuxt, SvelteKit, Astro או כל מסגרת שאינה וורדפרס
- אתה משתמש ב-CMS ללא ראש (Contentful, Sanity, Prismic) וצריך לתרגם תוכן בזמן פרסום או דרך webhook
- התוכן שלך חי בקבצי locale JSON שצריך לתרגם מבלי לפגוע במבנה המפתחות
- אתה עובר מוורדפרס ורוצה לקחת איתך את זרימת העבודה הרב-לשונית
- יש לך תוכן Markdown (פוסטים בבלוג, תיעוד, תיאורי מוצרים) וצריך גרסאות מתורגמות שלא שוברות את העיצוב
- אתה רוצה לתרגם למספר שפות בקריאה אחת ל-API במקום קריאה אחת לכל שפה
נקודת הקצה /translate של PolyLingo מקבלת מערך targets, כך שבקשה אחת יכולה להחזיר את כל 36 השפות הנתמכות בבת אחת. עבור קובץ locale שצריך להישלח בעשר שפות, זו קריאת API אחת במקום עשר.
מה עם מעבר מוורדפרס?
אם אתה מעביר אתר וורדפרס להגדרה ללא ראש או סטטית, תוכן Polylang שלך לא עובר איתך אוטומטית. התרגומים מאוחסנים כמטא-נתוני פוסט בוורדפרס ואינם מיוצאים בצורה נקייה לקבצי Markdown או מבני JSON.
הדרך המעשית שרוב הצוותים נוקטים:
- ייצא את תוכן הוורדפרס שלך ל-Markdown או JSON (כלים כמו
wordpress-export-to-markdownמטפלים בחלק המכניקה) - השתמש ב-PolyLingo כדי לתרגם את התוכן המיוצא לשפות היעד שלך
- אחסן את הקבצים המתקבלים במבנה התוכן החדש שלך לצד שפת המקור
נקודת הקצה batch של PolyLingo (POST /translate/batch) בנויה בדיוק לזה. אתה יכול לשלוח עד 100 פריטי תוכן בבקשה אחת, כל אחד עם הפורמט שלו, כולם חולקים את אותה קבוצת שפות יעד. עבור מעבר אתר עם מאות דפים, זה הכלי הנכון לעבודה.
סיכום צמוד
| PolyLingo | Polylang | |
|---|---|---|
| עובד ללא וורדפרס | כן | לא |
| שמירת פורמט (JSON, Markdown, HTML) | כן | רק תוכן וורדפרס |
| בקשה אחת, כל השפות | כן | לא |
| גישה ל-REST API | כן | לא |
| ממשק ניהול תוכן | ממשק מתרגם (ללא קוד) | ניהול מלא בוורדפרס |
| זיהוי אוטומטי של פורמט תוכן | כן | לא רלוונטי |
| תמיכה בשפות RTL | כן | כן |
| חיוב לפי שימוש | כן | תוסף חינמי / תשלום קבוע ל-Polylang Pro |
הגרסה הקצרה
אם אתה בוורדפרס ונשאר בוורדפרס: השתמש ב-Polylang. הוא בנוי לסביבה הזו והוא טוב בזה.
אם אתה מחוץ לוורדפרס, יוצא מוורדפרס, או בונה משהו שאינו וורדפרס: PolyLingo נותן לך את אותה זרימת עבודה רב-לשונית מובנית דרך API שעובד עם כל מה שאתה בונה.
שני הכלים יכולים גם להתקיים יחד. כמה צוותים מפעילים Polylang באתר השיווק הראשי שלהם (שנשאר בוורדפרס) ומשתמשים ב-PolyLingo לאתר התיעוד שלהם, למחרוזות ממשק המשתמש של האפליקציה שלהם או לתבניות האימייל שלהם. זרימת העבודה זהה; הסטאק לא חייב להיות.
נסה את זה
הרמה החינמית של PolyLingo כוללת 100,000 טוקנים לחודש. זה מספיק למספר פוסטים בבלוג בעשר שפות, או קובץ locale בגודל בינוני ב-36 שפות. אין צורך בכרטיס אשראי.
curl -sS -X POST "https://api.usepolylingo.com/v1/translate" \
-H "Authorization: Bearer $POLYLINGO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "# Welcome\n\nTranslate **any format** without breaking the structure.",
"format": "markdown",
"targets": ["es", "fr", "de", "ja"]
}'