- סטטוס
- נפתר
- דווח עבור
- WPML Multilingual CMS 3.1.9.7
- נפתר בגרסה
- 3.2
סקירה כללית של התקלה
דפים הופכים לבלתי שמישים או נטענים לאט מאוד.
אם באפשרותך לנטר אילו שאילתות מופעלות, תמצא הפניות לשאילתה הזו:
SELECT meta_key FROM wp_postmeta GROUP BY meta_key ORDER BY meta_key LIMIT 1000;
פתרון עוקף
עליך לבצע עריכה קטנה בקובץ אחד של WPML.
באפשרותך להשתמש בלקוח FTP כדי לערוך קובץ זה.
- פתח את
wp-content/plugins/sitepress-multilingual-cms/inc/translation-management/translation-management.class.php - עבור לשורה 102, שבה עליך לראות את השורה הזו:
$this->initial_custom_field_translate_states(); - הפוך שורה זו להערה, על ידי הוספת “//” בתחילתה.
- שמור את הקובץ
ברגע שתעשה זאת, שום דבר לא אמור להשתנות (למעט הביצועים, שעשויים להשתפר באופן ניכר). אין תופעות לוואי לשינוי זה. אתה הופך להערה קוד שבעבר ביצע פעולה מסוימת, אך אינו נחוץ יותר.
הבחנו בזינוק בשאילתות המבוצעות גם בצד השרת וגם בצד הלקוח. הדבר משפיע רק על אתרים גדולים מאוד מאוד עם מיליוני רשומות postmeta (כפי שיש לנו באתרים שלנו).
שאילתה זו מגיעה מלוגיקה ישנה, שכבר לא באמת עושה שום דבר חשוב. אנו מסירים אותה לחלוטין ב־WPML 3.2.
אם אתה מבחין בזינוק עצום בזמני טעינת הדפים, ייתכן שזהו המקרה שלך.
עם זאת, שים לב שמכיוון ש־WordPress 4.2 שינה את ערכת התווים ל־UTF8-bytes, תוספים רבים אחרים וערכת העיצוב עלולים להציג בעיות ביצועים. שדרוג זה עשוי לשנות את יצירת האינדקסים (כפי שקרה בשרת שלנו) ועשויות להיות לו אינטראקציות בלתי צפויות עם MySQL (כפי שחווינו). הדבר גורם לדברים שהיו בעלי השפעה נמוכה מאוד להפוך לפתע לקריטיים.
לכן, העצה שלנו היא להפעיל את יומן השאילתות האיטיות של MySQL ולבדוק אילו שאילתות באמת משפיעות על ביצועי השרת שלך.