WPML
סטטוס
פתוח
דווח עבור
WPML Multilingual CMS 4.6.4
תגיות נושא
Bug

סקירה כללית של התקלה

עדכון ל־WPML 4.6.4 בשרת עם מנוע המטמון OpCache עלול לגרום לשגיאה קריטית בלתי צפויה בעת השימוש בצד השרת שלך. במיוחד בעת שימוש בתהליך פריסה.

2023/06/22 02:36:16 [error] 359706#359706: *507646 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught TypeError: WPML\User\UsersByCapsRepository::__construct(): Argument #2 ($languagePairs) must be of type WPML\User\LanguagePairs\ILanguagePairs, WPML_Language_Pair_Records given, called in .../wp-content/plugins/sitepress-multilingual-cms/classes/container/class-config.php on line 63 and defined in .../wp-content/plugins/sitepress-multilingual-cms/classes/user/UsersByCapsRepository.php:18

פתרון עוקף

אנא ודא שיש לך גיבוי מלא של האתר לפני שתמשיך.

אפשרות 1


הפעלה מחדש של שרת ה־PHP שלכם אמורה לפתור בעיה זו. אנא צרו קשר עם ספק השרת שלכם ובקשו הפעלה מחדש של שירות PHP-FPM.

אפשרות 2

1. בדוק אם הקבצים החדשים קיימים

  • פתח את ../wp-content/plugins/sitepress-multilingual-cms/classes/language/class-wpml-language-pair-records.php

  • בדוק אם הקובץ ממוקם כראוי. הוא אמור להכיל את הקוד הבא בשורה 14:
    class WPML_Language_Pair_Records implements ILanguagePairs {

    במקום:

    class WPML_Language_Pair_Records {


  • אם זה לא המצב, הדבר מצביע על בעיה בתהליך הפריסה ועליך לבדוק זאת.
2. אם אתה רואה שתוכן הקובץ תקין

באפשרותך לחלופין לבטל את התוקף של ה־OPCache שלך עבור קובץ ספציפי זה.


  • הרץ זאת מסקריפט המוגש דרך HTTP (לא מ־CLI/SSH):
    opcache_invalidate( '/wp-content/plugins/sitepress-multilingual-cms/classes/language/class-wpml-language-pair-records.php', true);

3. לבסוף, ודא שלא נותרה לך תיקיית /Language/

  • פתח את התיקייה /wp-content/plugins/sitepress-multilingual-cms/classes/ שלך.

  • חפש תיקיית /Language/ שנותרה עם אות רישית.

  • אם זה המצב, אנא הסר את התיקייה /Language/ וודא שהתיקייה /language/ מכילה את הקבצים מגרסת WPML 4.6.6.

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

כל התקלות הידועות →