בניית אתר דו לשוני בוורדפרס באמצעות פולילנג

הקמת אתר וורדפרס דו לשוני הוא תהליך די פשוט בעזרת התוסף פולילנג.

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

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

אפשרויות התוסף פולילנג

  • באפשרותכם ליצור כמה שפות שרק תרצו. ישנה תמיכה בשפות מימין לשמאל (RTL). כאשר ניתן, התוסף מוריד אוטומטית את קבצי השפה הרלוונטים לשפות שהוספתם.
  • התוסף נותן לכם את האפשרות לתרגם עמודים, פוסטים, קטגוריות, תגיות, תפריטים וווידג׳טים, כמו גם, סוגי תוכן מותאמים (Custom Post Types), טקסונומיות שיצרתם, פוסטים דביקים, פורמטים של פוסטים ואף פידים (RSS).
  • במידה ותבחרו, קטגוריות, תגיות ועוד שדות מטא יועתקו אוטומטית כאשר אתם מוסיפים תרגום לעמוד או פוסט מסויים. ישנה גם האפשרות לסנכרן אלו בין פוסט מסויים למקביל שלו בשפה הנוספת.
  • התוסף תומך Multisite, קישורים קבועים יפים (Pretty Permalinks) ועמוד בית סטטי.
  • האפשרות להחליף שפה מגיעה יחד עם התוסף או כווידג׳ט או כחלק מהתפריט של אתר הוורדפרס שלכם.
  • התוסף מציע API למפתחים שביניכם.
  • התוסף ידידותי לקידום האתר ו SEO ויודע לעבוד עם רוב תוספי ה SEO השולטים בשוק, כמו כן הוא דואג ליצירת תגיות hreflang ותגיות opengraph בצורה אוטומטית.

התקנה והוספת שפות בפולילנג

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

התקינו את התוסף ותמצאו תפריט חדש בלוח הבקרה של וורדפרס בשם שפות.

התקנת פולילנג

לצורך המדריך נתייחס למצב בו אתר הוורדפרס שלנו הוא בעברית ונוסיף לו את השפה האנגלית.

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

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

שפת ברירת מחדל לפוסטים - Polylang

הוסיפו גם את השפה האנגלית באותה דרך (en_US).

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

שפת ממשק המשתמש של התוסף פולילנג

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

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

בכל מקרה אם אתם מאד רוצים שהממשק יופיע בעברית, אני מצרף שני קבצי שפה לפולילנג אותם עליכם להעתיק לתיקייה wp-content/languages/plugins.


החלפת שפה בפולילנג

התוסף Polylang מספק לכם שתי אפשרויות להוספה של כפתור החלפת שפה או בשמו האחר ״מחליף שפות״ (Language Switcher). הראשונה היא באמצעות התפריט הראשי של האתר והשנייה היא באמצעות ווידג׳ט אשר יופיע בסרגל הצדדי (או בכל מקום שניתן להכניס ווידג׳טים בתבנית שלכם).

הוספת מחליף השפות בתפריט הראשי

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

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

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

מחליף השפות - תפריטים - Polylang

הוספת מחליף השפות באיזור הווידג׳טים

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

מחליף השפות - ווידג׳טים - Polylang

תרגום תוכן באמצעות פולילנג

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

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

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

תהליך הוספת השפה דיי זהה בכל סוגי התוכן, בין אם זה תגיות או בין אם זה פוסטים. די פשוט…


הגדרות התוסף Polylang

ניתן מבט הגדרות התוסף הנמצאות תחת שפות > הגדרות בלוח הבקרה של וורדפרס.

הגדרות התוסף Polylang

לתוסף Polylang אין הגדרות יותר מדי מתוחכמות (וטוב שכך). נעבור על ההגדרות ונסביר כל אחת מהן:

1. שינויי URL – בחלק זה יש באפשרותכם לבחור את מבנה הקישורים (URL) של השפות השונות. ישנן מספר אפשרויות:

  • השפה מוגדרת רק בתוכן – ניתן לקבוע כי ה URL של הפוסטים העמודים ושאר סוגי התוכן אינו ישתנה ויוצג בהתאם לתוכן ללא שום שינויי בהתאם למזהה הכתובת (slug) של אותו תוכן.
  • במבנה הקישורים השפה מופיעה כתיקיה – השפה תופיע במבנה הקישורים כתיקייה. לדוגמא – http://test-wp/en/my-post.
  •  במבנה הקישורים השפה מופיעה כסאב דומיין – השפה תופיע במבנה הקישורים כסאב דומיין. לדוגמא – http://en.test-wp/my-post.
  • השפות מופיעות בדומיינים שונים –  לכל אחת מהשפות ישנו דומיין אחר לגמרי.
  • הסרת שינוי כתובת עבור שפת ברירת מחדל – ניתן לקבוע כי שינוי מבנה הקישורים אינו יתבצע עבור שפת ברירת המחדל.
  • למחוק /language/ לפני שם השפה במבנה הקישורים – הבחירה האם להסיר את המילה language לפני השפה ממבנה הקישורים. לדוגמא http://test-wp/en
  • לשמור /language/ לפני שם השפה במבנה הקישורים – ההפך מהסעיף הקודם. לדוגמא – http://test-wp/language/en
  • כתובת עמוד הבית מכילה את קוד השפה במקום שם העמוד או מזהה (ID) העמוד – הבחירה האם הכתובת של עמוד הבית תכיל את השפה ולא את שם העמוד או המזהה שלו. לדוגמא – במקום http://test-wp.com/home יופיע http://test-wp.com/en.

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

שינויי URL - תוסף Polylang - ריבוי שפות

2. זיהוי שפת הדפדפן (Detect Browser Language) – ניתן לקבוע האם Polylang תפנה אוטומטית לעמוד בשפה מסויימת בהתאם לשפה של הדפדפן בו הוא משתמש.

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

4. סוגי תוכן מותאמים וטקסונומיות (CPT & Taxonomies) – מאפשר לכם לבחור לאיזה סוגי תוכן מותאמים אישית ולאילו טקסונומיות מותאמות אישית תופיע האפשרות להוספת שפה.

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

6. כלים (Tools) – מאפשר לקבוע האם למחוק ממסד הנתונים את כל המידע וההגדרות של Polylang במידה ואתם מוחקים את התוסף.


מחרוזות תרגומים

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

תרגום מחרוזות - ריבוי שפות - וורדפרס

השימוש של פולילנג בתבניות וורדפרס

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

pll_the_languages( $args );

כאשר $args הוא מערך אופציונלי והאפשרויות הינן:

  • ‘dropdown’ => displays a list if set to 0, a dropdown list if set to 1 (default: 0)
  • ‘show_names’ => displays language names if set to 1 (default: 1)
  • ‘display_names_as’ => either ‘name’ or ‘slug’ (default: ‘name’)
  • ‘show_flags’ => displays flags if set to 1 (default: 0)
  • ‘hide_if_empty’ => hides languages with no posts (or pages) if set to 1 (default: 1)
  • ‘force_home’ => forces link to homepage if set to 1 (default: 0)
  • ‘echo’ => echoes if set to 1, returns a string if set to 0 (default: 1)
  • ‘hide_if_no_translation’ => hides the language if no translation exists if set to 1 (default: 0)
  • ‘hide_current’=> hides the current language if set to 1 (default: 0)
  • ‘post_id’ => if set, displays links to translations of the post (or page) defined by post_id (default: null)
  • ‘raw’ => use this to create your own custom language switcher (default:0)

שימו לב כי במידה ואינכם משתמשים באפשרות ה dropdown, עליכם להדפיס בעצמכם את תגיות ה ul.

דוגמאות לשימוש pll_the_languages


<!-- outputs a list of languages names -->
<ul>
    <?php pll_the_languages(); ?>
</ul>

<!-- outputs a flags list (without languages names) -->
<ul>
    <?php pll_the_languages( array( 'show_flags' => 1, 'show_names' => 0 ) ); ?>
</ul>

<!-- outputs a dropdown list of languages names -->
<?php pll_the_languages( array( 'dropdown' => 1 ) ); ?>

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

$translations = pll_the_languages( array( 'raw' => 1 ) );

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

  • [id] => language id
  • [slug] => language code used in urls
  • [name] => language name
  • [url] => url of the translation
  • [flag] => url of the flag
  • [current_lang] => true if this is the current language, false otherwise
  • [no_translation] => true if there is no available translation, false otherwise

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

פונקציה נוספת שסביר להניח ותשתמשו בה הינה pll_current_language אשר מחזירה את השפה הנוכחית של העמוד. הארגומנט $value הוא אופציונלי ומאפשר לבחור האם להחזיר את שם השפה, את ה locale שך אותה שפה או את המזהה של השפה (slug) – שהוא גם ברירת המחדל.

תוכלו לתת מבט על פונקציות נוספות ש Polylang מציעה בדוקומנטציה של התוסף.

בדיקה האם פולילנג פעיל

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

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

<?php
/**
 * Detect plugin. For use in Admin area only.
 */
if ( is_plugin_active( 'plugin-directory/polylang.php' ) ) {
    //plugin is activated
} 
?>

מה לגבי עיצוב ו CSS שונה לכל אחת מהשפות בפולילנג?

אם אתם מעוניינים לעצב או לטרגט שפה ספציפית באמצעות CSS תוכלו לעשות זאת על ידי הסלקטור lang: שרבים מסתבר אינם מכירים. הנה דוגמה לעיצד ניתן להשתמש בו:

.element:lang(en) {
    direction: ltr !important;
    text-align: left !important;
}

.element:lang(he) {
    direction: rtl !important;
    text-align: right !important;
}

נאמר כי בדרך כלל, בתבניות הבנויות עבור שפות הכתובות מימין לשמאל (עברית וערבית לדוגמה) קיים קובץ בשם rtl.css בו ניתן להשתמש עבור CSS ספציפי לשפות RTL.

לחילופין, ניתן לייצר stylesheet שונה עבור כל שפה. אם תצרו קובץ בשם en_US.css, fr_FR.css או he_IL.css ותוסיפו אותם לתיקייה הראשית של התבנית, אלו ייטענו אוטומטית בהתאם לשפה המופיעה בשם הקובץ עצמו.

ומה ברמת פיתוח תבנית הבנוייה עם פולילנג?

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

<?php if (get_locale() == 'he_IL')  { 
    echo '<h1>כותרת בעברית</h1>';
}
elseif (get_locale() == 'en_US') {
    echo '<h1>English Title</h1>';
}
?>

לסיכום

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

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

שתפו אותנו במחשבות לגבי התוסף, יתרונות וחסרונות לגבי תוספים אחרים או כל מה שעולה לכם בראש… 🙂

 

רועי יוסף
רועי יוסף

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

49תגובות...
  • שגב שובל 3 במרץ 2018, 18:42

    היי רועי תודה על המאמר המפורט, אחלה מדריך.

    האמת היא שאני נתקל בקושי שדיי משגע אותי, אני עובד עם אתר בערכת עיצוב POJO ואני מנסה לתרגם את הווידג'טים של הפוטר והסרגל העליון . אני דיי אוכל חרא – גם אחרי שהבנתי שבשביל לתרגם טופס ב – Contact form 7, אני צריך להוריד:

    Contact Form 7 Polylang extension
    Smart Grid-Layout Design for Contact Form 7

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

    • רועי יוסף 3 במרץ 2018, 19:02

      היי שגב 🙂

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

      משהו בסגנון של הקוד הבא אמור לעבוד:

      
      .yourFormClass input:lang(en) {
          direction: ltr !important;
          text-align: left !important;
      }
      • שגב שובל 4 במרץ 2018, 14:20

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

  • מרינה 7 במאי 2018, 1:54

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

    אגב, מה יקרה לתוכן המתורגם אם אחליט בשלב כלשהו לעבור לתוסף אחר?

    • רועי יוסף 7 במאי 2018, 1:59

      היי מרינה 🙂

      ישנם דרכים להחליף ולבצע מיגרציה אם תרצי בעתיד. לדוגמה, לתוסף WPML יש את הפלאגין הבא למיגרציה מ Polylang…

  • נעמה שיראל 18 ביוני 2018, 15:10

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

    תודה רבה

    • רועי יוסף 18 ביוני 2018, 15:13

      היי נעמה 🙂
      כן, אם את מעוניינת להשתמש בווקומרס ולתרגם מוצרים נדרשת ההרחבה המדוברת…

  • Yogev 21 ביולי 2018, 22:52

    היי רועי… יש לי שאלה לגבי הקטע של "באפשרותכם לבחור את מבנה הקישורים (URL) של השפות השונות." במידה ובחרתי באופציה של: "במבנה הקישורים השפה מופיעה כסאב דומיין – השפה תופיע במבנה הקישורים כסאב דומיין. לדוגמא – http://en.test-wp/my-post."

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

    אשמח לקצת הסבר על העניין…

    • רועי יוסף 22 ביולי 2018, 15:56

      היי יוגב 🙂

      כן אתה צריך לדאוג ליצור סאבדומיין ומעבר לכך עליו להפנות לתיקייה הראשית של התקנת הוורדפרס (היכן ש index.php נמצא). אומר מראש שישנם חברות אחסון שאינן מאפשרות לבחור לאיזו תיקייה להפנות את הסאבדומיין.. בהצלחה!

      • Yogev 22 ביולי 2018, 22:11

        הבנתי. תודה.

        ומה עם העניין של הכיוון של האתר?

        אם אני אעבור לאנגלית אז גם כל האתר יהפוך משמאל לימין? כי הבנתי שזה הבעיה בדברים האלה.. שזה רק מתרגם אבל לא הופך את הכיוון של האתר במעבר בין השפות…

        • רועי יוסף 22 ביולי 2018, 22:13

          כיוון האתר אינו קשור לפולילנג, תאלץ לבצע עבודת CSS בכדי לדאוג לכך ככל סיטואציה אחרת…

  • מרינה 23 ביולי 2018, 0:06

    התקנתי את Polylang, זה עובד נהדר.

    לא מצאתי צורך להגדיר סאב-דומיין. מיד אסביר מדוע. הפלאגין יוצר בעצמו תיקיה חדשה בת 2 אותיות עבור דף הבית של השפה הנוספת בדמות /he/. שאר הדפים המתורגמים באתר אינם זקוקים לתיקיה נפרדת. כל הדפים של האתר בכל השפות, נמצאים יחד באותה תיקיה. הסיבה להימנעות מסאב-דומיין היא שרציתי שכל דפי האתר יופיעו ב-sitemap, מטעמי SEO.

    בהתחלה די התברברתי עם הפלאגין, אבל בסוף הבנתי 2 נקודות חשובות שימנעו התברברות:

    1. מיד לאחר התקנת הפלאגין, יש להגדיר ראשונה את השפה הראשית של האתר, ומיד אחריה את השפות הנוספות.
    2. לפני שמתחילים לתרגם דפים פנימיים באתר, יש להתחיל בדף הבית של השפה הנוספת (שכאמור, יקבל תוספת של 2 אותיות בסופו -/he/ או /en/, תלוי איזו השפה הראשית), ולאחריו, אפשר לעבור לתרגום דפים נוספים.

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

    ולשאלה שנשאלה למעלה, אכן, הפלאגין הופך בעצמו את כיוון הדף מימין לשמאל ומשמאל לימין, בהתאם לשפה. אין צורך ב-CSS. הניסיון שלי בוורדפרס קטן ביותר, וכישורי התכנות שלי קרובים לאפס, ובכל זאת הפעלתי הכל בצורה מושלמת. הפלאגין נהדר ומאוד מומלץ. אפשר לראות כיצד הוא פועל באתר שלי: https://onlinewager.pro. אני התחלתי את האתר באנגלית ואח"כ הוספתי עברית ורוסית. צרפתית בדרך.

    • אליאור 29 ביולי 2018, 18:28

      אהבתי את הפירוט. יש לך מושג אם אני רוצה לבחור בתרגום צרפתית באיזה אני בוחר מבין השלושה?
      Fr_be
      Fr_ca
      Fr_fr

      • רועי יוסף 29 ביולי 2018, 18:32

        מאמין שאת האחרון. הראשון זה FR – Belgium השני FR- Canada והשלישי FR – French אז לך על השלישי…

        • אליאור בוכריס 29 ביולי 2018, 18:51

          הימרתי נכון.. 🙂
          תודה!

        • אליאור בוכריס 29 ביולי 2018, 18:56

          תודה רבה 🙂

          משהו לא קשור.. מתי אתה מעלה מדריך ליצירת תפריט כמו שלך? אבל אחד שעובד ובלי תוסף של OceanWP..

    • יעל זליגמן 2 בינואר 2019, 2:41

      אני מאוד מזדהה איתך מרינה, גם מהחיבה לפלאגין הזה, וגם מהבורות בתחום התכנות. ובכ"ז שאלה לי, שראיתי שעובדת נפלא באתר שלך: החיפוש – שמאפשר חיפוש של אותה מילה בשפות שונות (ראיתי ב- gambling שזה נותן לפי השפה פוסטים שונים). איך עשית את זה?

      • Marina 5 בינואר 2019, 16:36

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

        • רועי יוסף 5 בינואר 2019, 16:56

          ישנה טבלה במסד הנתונים שהתוסף יוצר שיכולה להיות די גדולה. אך את צריכה לוודא שאת מאנדקסת ב Relevanssi רק את סוגי התוכן הרלוונטי בכדי לצמצם את גודל הטבלה. כך או כך שמח שהסתדר לך 🙂

  • רוב 9 באוגוסט 2018, 10:17

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

    ב-WPML יש תוסף חינמי שאחראי לתרגום החנות וב – Polylang צריך לקנות אחד. ב-WPML וב – WooCommerce ממליצים על WooCommerce Multilingual. מה נראה לך עדיף אם בנית משהו כזה?

  • משה 2 בספטמבר 2018, 15:12

    יש באג אחד מעצבן עם התוסף שעדיין לא הצלחתי לפתור
    https://ibb.co/mW8dze
    https://ibb.co/dGXhQK
    הכפתור ניוט מופיע באמצע ולא בצד. רק בשפת העברית…

    • רועי יוסף 4 בספטמבר 2018, 22:25

      היי משה,

      זה לא קשור לתוסף אלא להגדרות העיצוב (CSS) של התבנית…

  • אלינור מור 27 בספטמבר 2018, 0:35

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

    • רועי יוסף 27 בספטמבר 2018, 0:40

      היי אלינור,

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

  • רוב 11 באוקטובר 2018, 17:15

    יצא לך לעבוד עם קארדקום בשביל סליקה באתר דו לשוני?

    האתר מתורגם בסדר וגם החנות דרך תוסף בשם Hyyan WooCommerce Polylang Integration. הבעיה כשאני מגיע לסליקה אז העמוד סליקה הוא בעברית גם לאתר באנגלית. יש לך רעיון איך אפשר לסדר את זה?

  • AM-stories 25 באוקטובר 2018, 11:32

    היי רועי, מאמר מעולה! עזר לי מאוד.יש לי כמה שאלות, אשמח אם תוכל לעזור.

    #איך ניתן לערוך את העיצוב שיהיה שונה בכל אחת מהשפות? (לדוגמא אם אני רוצה שבעברית יהיה פונט מסויים ובאנגלית פונט אחר), הכוונה היא לא לפוסטים עצמם אלא לווידג׳טים.
    #איך ניתן לערוך את הדגלים של השפות – במידה ואני רוצה להעלות תמונות של דגלים משלי?

    תודה רבה!

    • רועי יוסף 27 באוקטובר 2018, 3:41

      היי,

      לגבי שאלתך הראשונה – ניתן לעצב שונה כל אחת מהשפות בכמה דרכים. הסברתי במדריך תחת הכותרת ״מה לגבי עיצוב ו CSS שונה לכל אחת מהשפות בפולילנג?״ אז תן מבט…

      לגבי הדגלים של השפות, עלייך ליצור קבצי PNG או JPG עבור השפות הרצויות ולקרוא לקובץ בהתאם לקוד לקוד השפה המדוברת, לדוגמה, עבור אנגלית en_US.png או he_IL.jpg.

      לאחר מכן עלייך להעלות קבצים אלו לתיקיה /wp-content/polylang/ ולגשת לאחר מכן לממשק הניהול של וורדפרס, שפות > הגדרות > שינויי URL וללחוץ על שמירה.

  • משה שטרית 17 בדצמבר 2018, 10:57

    היי רועי, תודה על המדריך המפורט. התקנתי את ה- Polylang באתר בסביבת בדיקה עם תבנית enfold.

    https://adva-temp.mcnet.co.il

    התפריט מוגדר בסרגל צד (sidebar menu). הגדרתי שתי שפות – אנגלית (מחדל) ועברית ונתקלתי בבעיה …האתר באנגלית עובד בסדר אבל כשעובר לעברית, גוף הדף (container) נשאר מוצמד לימין והתפריט "רוכב" עליו. מיקום התפריט נראה לי תקין התפריט מוצג בעברית אבל חלקו הימני של גוף הדף מוסתר ע"י התפריט ואיננו מוצמד שמאלה.

    האם מכיר דרך לתקן את זה ?

    תודה

    • רועי יוסף 17 בדצמבר 2018, 15:32

      היי משה,

      זה קשור לתמיכת התבנית שלך ב RTL Languages. אתה יכול להוסיף משהו בסגנון הבא ל CSS ולפתור את זה אבל אני מניח שתתקל בבעיות נוספות:

      .html_header_left:lang(he) #main {
          margin-right: 300px;
          margin-left: auto;
          position: relative;
          border-left-style: solid;
          border-left-width: 1px;
      }
  • יעל זליגמן 1 בינואר 2019, 17:25

    הי רועי, תודה על המדריך.

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

    הצילו!!

    • רועי יוסף 1 בינואר 2019, 17:36

      היי יעל,

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

      • Marina 5 בינואר 2019, 16:38

        התקנתי Relevanssi וזה פתר את הבעיה

      • מרינה 13 בפברואר 2019, 16:38

        היי רועי,

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

        אולי יש לך רעיון כיצד לאלץ polylang להציג את כל התמונות בכל השפות בספריה אחת? בסך הכל, תמונה היא תמונה, ולרוב השפה אינה רלוונטית עבורה.

        • רועי יוסף 13 בפברואר 2019, 16:52

          היי מרינה, האם ניסית לאפשר שכפול בכל השפות תחת Languages > Settings > Media? האפשרות נקראית ״Automatically duplicate media in all languages when uploading a new file.״

  • דנה 7 בינואר 2019, 10:47

    היי, אני פעם ראשונה מקימה אתר (לבד) (אני לא מפתחת, סתם חובבנית), ונתקלתי בבעיה שאני לא מצליחה לפתור:

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

    תודה! דנה

    • רועי יוסף 7 בינואר 2019, 14:40

      היי דנה, האם הסיטואציה קוראת כם בדפדפן אחר? האם היא קוראת אם את פותחת את העמוד ב Incognito Mode?

      • מרינה 13 בפברואר 2019, 16:30

        היי דנה,

        תנסי להתקין תוסף VPN לכרום. יש תוסף שנקרא Hola והוא חינמי. לאחר ההתקנה, תכנסי לאתר שלך ממדינות שונות ותראי אם משהו משתנה או שהוא עדיין מתעקש להיכנס דווקא לאנגלית.

  • אילן אבקסיס 9 בינואר 2019, 20:20

    תודה רבה על המדריך!!! התקנתי את התוסף. הוא עובד לא רע, והשפות מתחלפות.

    יש לי כמה שאלות, אבל נבירה במדריך, ובעיקר ניסוי ותעיה (כמו למשל כיצד ליצור תפריט בשפה שונה לכל שפה. בסוף הבנתי איך זה קורה) – פותרות את השאלות לאט אבל בטוח (בסוף אהיה מומחה לוורדפרס רחמנא ליצלן. ואני בכלל היסטוריון :-)).

    אני חש חופשי לשאול אם אתקל במשוכה בלתי עבירה. אילן.

  • ברוריה 20 בינואר 2019, 14:44

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

    בניתי אתר ותרגמתי עם פולילנג, אך אני לא מוצאת דרך לתרגם את ההאדר והפוטר – שעיצבתי כטמפלטים באלמנטור איך אני עושה את זה?

    אודה לך על עזרתך,
    ברוריה

    • רועי יוסף 20 בינואר 2019, 15:01

      היי ברוריה 🙂

      איני מכיר את אלמנטור מספיק בכדי לענות לך, אך אולי מישהו אחר שרואה שאלה זו יענה…

      על כל מקרה – מבדיקה שטחית גיליתי כי ישנו תוסף הנקרא Polylang Connect for Elementor שאולי יעזור לך להתגבר על הבעיה. את מוזמנת לנסות ושתף האם עזר לך… בהצלחה!

  • זאב 22 בינואר 2019, 18:09

    מה בנוגע לתגית hreflang? זה מוסיף?

  • דורה 9 בפברואר 2019, 16:33

    היי 🙂
    איך אפשר לחבר בין שני פוסטים קיימים כתרגומים אחד של השני?
    תודה

    • רועי יוסף 10 בפברואר 2019, 19:32

      היי דורה,

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

      לאחר מכן תוכלי לשנות את כתובת הפוסט החדש שיצרת לכתובת הפוסט שמחקת. מקווה שהייתי ברור מספיק… 🙂

  • מרינה 13 בפברואר 2019, 16:24

    היי דורה,

    כשמתקינים את polylang הפלאגין מאפשר חיבור בין 2 פוסטים (או דפים) כתרגום אחד של השני.
    polylang מאפשר את החיבור ב-2 דרכים:

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

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

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

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

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

  • אילי וולף 19 בפברואר 2019, 16:34

    polylang אחלה מאמר. שאלה : מה עושים עם הלוגו? ואם רוצים לוגו שונה לכל שפה? נגיד האתר יהיה בעברית ובאנגלית. ויש לי לוגו לבעברית ולוגו באנגלית מה עושים?

    • רועי יוסף 19 בפברואר 2019, 16:36
      <?php if (get_locale() == 'he_IL')  { ?>
          <img src="HEB LOGO URL" alt="HEB LOGO ALT">
          <?php
      }
      elseif (get_locale() == 'en_US') { ?>
          <img src="ENG LOGO URL" alt="ENG LOGO ALT">
          <?php
      }
      ?>

השאירו תגובה

פעימות
Up!