تضمّن الإصدار WPML 3.5 تغييراً كبيراً في ترجمة النصوص. ومع إطلاقنا له، علمنا بعدد من الحالات التي لم تظهر أثناء التطوير. تعالج التحديثات اللاحقة جميع المشكلات وتحسّن الأداء بشكل أكبر.
الإصلاحات منذ الإصدار WPML 3.5
- إصلاح استثناء غير مُلتقط في الحالات التي لا يوجد فيها العمود domain_name_context_md5 في الجدول icl_strings
- إصلاح خطأ فادح: استثناء غير مُلتقط «InvalidArgumentException» مع الرسالة «Argument ID must be numeric and greater than 0» عند تصفية الروابط الدائمة
- إصلاح خطأ فادح يظهر أثناء الترقية: خطأ في قاعدة بيانات WordPress: specified key was too long; max key length is 1000
- إصلاح خطأ فادح: Declaration of WPML_Post_Element::get_type() must be compatible with that of WPML_Translation_Element::get_type() لـ PHP 5.2
- إزالة الشرطة المائلة العكسية البادئة \ لتجنب التحذيرات في PHP قبل الإصدار 5.3
تحسينات السرعة
لقد أجرينا بعض التعديلات على الجدول الجديد الذي يخزن السلاسل النصية التي تظهر في كل صفحة. تقلل هذه التغييرات بشكل كبير من حجم الجدول، وتحسّن الأداء وتخفض استهلاك الذاكرة.
- تقسيم جدول واحد كبير يحتوي على تكرارات إلى جدولين صغيرين وفعالين
- تحسين فهارس الجداول
- الحد من النمو المحتمل للجداول في المواقع التي تستخدم وسائط عناوين URL، وذلك باستخدام قائمة بيضاء للوسائط التي تعدّل اختيار الصفحة
النتائج
أخذنا بعض القياسات لأداء موقعنا الخاص أثناء تحديثات الإصدار. يمكنك أن ترى كيف انخفض الحمل، ثم ارتفع (عندما لم تكن فهارس الجداول محسّنة) والآن عاد إلى ما دون مستواه الأصلي.




الأرقام المطلقة في جميع هذه الرسوم البيانية أقل أهمية، لأنها أُخذت في أيام مختلفة من الأسبوع. في أيام الجمعة، تكون حركة الزيارات لدينا أقل بكثير مما هي عليه في أيام الإثنين. لفهم التغييرات، انظر إلى النسبة بين الأجزاء. يمكنك أن ترى أنه في الأصل، كان الوصول إلى icl_strings يستغرق تقريباً نفس الوقت الذي يستغرقه جلب المقالات (وهو أمر غير جيد). الآن، تستغرق جميع عمليات وصول WPML إلى قاعدة البيانات في المتوسط ثلث (1/3) استعلامات المقالات. هذا مهم جداً، لأن WPML يحتاج إلى تحميل عدد كبير جداً من السلاسل النصية، بينما يحتاج WordPress إلى بضع مقالات فقط.
عملية أفضل في المرة القادمة
اضطررنا لإصدار هذا التحديث قبل التمكن من إجراء قياسات الأداء الكاملة، لأنه تضمّن تغييرات لـ WordPress 4.6. في المستقبل، سنحرص على فصل تحسينات الأداء عن التوافق مع WordPress. بمجرد وصول إصدار جديد من WordPress إلى مرحلة «الإصدار المرشح»، سنقوم بإصدار ثانوي يحتوي فقط على تغييرات التوافق. سنخصص وقتاً لإجراء تغييرات أطول على الأداء، غير مرتبطة بإصلاحات الأخطاء وتحديثات التوافق، ولن نصدرها إلا بعد أن نكون راضين تماماً عن النتائج.
سيستمر الإصدار التالي من WPML في التركيز على الاستقرار والأداء. تعمل 99% من المواقع التي تستخدم WPML بسلاسة الآن، ولكن هناك عدد قليل من المواقع التي تستخدم تكوينات «فريدة» لخادم الويب أو PHP أو قاعدة البيانات. سنعالج هذه الحالات في الإصدار الثانوي القادم. سنقوم أيضاً بتضمين بعض التحسينات الإضافية على الأداء، والتي ستجعل كلاً من لوحة التحكم والواجهة الأمامية أخف وأسرع.
هل لديك ملاحظات؟
إذا كانت لديك أسئلة وأفكار واقتراحات، يرجى إضافة تعليقاتك. يسعدنا جداً الحصول على ملاحظاتك ونبذل قصارى جهدنا لتقديم ما تحتاجه.

