כדי לרוץ, WPML צריך את הדברים הבאים:

  • WordPress 3.9 ומעלה
  • PHP 5.6 ואילך עם מגבלת זיכרון של לפחות 128MB כאשר מומלץ 256MB (ראה הגדרות זיכרון של WP). קח בחשבון שדרישות הזיכרון עבור האתר תלויות בתוכן, בערכת העיצוב ובכל התוספים.
  • MySQL 5.6 ואילך.
  • היכולת ליצור טבלאות במסד הנתונים שלך.
  • ההרחבה Multibyte String לשימוש ב'תרגום המחרוזות' של WPML
  • ההרחבה SimpleXML לשימוש בקובצי XLIFF ב'ניהול התרגום' של WPML.
  • יש להפעיל את הפונקציה eval() של PHP. ניתן למצוא מידע נוסף ב מקטע אודות eval().

שימוש בגרסאות קודמות של PHP ו-MySQL

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

הרגש חופשי להגיב כאן על השימוש ב-WPML עם גרסאות אחרות.

כיצד לבדוק באיזו גרסה של PHP אתה משתמש

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

צור קובץ בשם php_info.php ושים אותו בספרייה של WordPress (ליד הקובץ wp-config.php). על קובץ זה להכיל את הדברים הבאים:
<?php phpinfo(); ?>

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

כשתהיה שם, פתח דפדפן ועבור אל https://yourdomain.com/php_info.php .

אתה אמור לראות משהו כמו:

php-info.php מציג
php-info.php מציג

למעלה, כתוב איזו גרסה של PHP את המריץ. אם כתוב PHP גרסה 5.5, זה לא יעבוד. הדבר הטוב ביותר הוא לכתובת לחברת האירוח ולבקש מהם להפעיל את PHP 5.6 או גרסה מתקדמת יותר.

מבנה קישורים ישירים

WPML מוסיף לכתובות URL מידע על השפה. הוא נבדק עם מבני הקישורים הישירים הבאים: הוא נבדק בכל מבני הקישורים הקבועים הבאים:

  • הסבר:
  • /%year%/%monthnum%/%postname%/

הסבר:

גם מבנים אחרים של קישורים קבועים עשויים לעבוד, אך הם עלולים לגרום לבעיות בתצורות שונות. בכל האתרים שלנו אנו משתמשים ב-/%year%/%monthnum%/%postname%/.

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

השימוש בפונקציה eval()

יש להפעיל את הפונקציה eval() מכיוון ש-WPML משתמש במסגרת של TWIG עבור המבנה והתבניות שלו, ולכן WPML תלוי בפונקציה זו.

רוב מנועי התבניות הנפוצים, כגון Smarty ו-TWIG, גילו שמהיר יותר לכתוב את קוד ה-PHP לקובץ. באופן זה, ניתן לנצל את המטמון של OPcode ולהימנע מהרצת בנייה בזמן אמת של קוד התבנית.

TWIG מפעיל הרבה בדיקות וניקיונות כדי למנוע התקפות אפשריות ובטוח להשתמש בו עם WPML. אולם איננו יכולים להבטיח שמפתחים אחרים ביצעו את אותם בדיקות שאנחנו עשינו בתהליך אבטחת האיכות שלנו.

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

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