WPML

أصبحنا مستعدين لإطلاق إصدار بيتا من WPML 3.5. يتضمن هذا الإصدار تحسينات كبيرة على ترجمة النصوص، سواء من حيث الوظائف أو الأداء.

يستخدم كل موقع يعتمد على WPML تقريباً ترجمة النصوص. لذا، يمكنك أن تتخيل أن تحسين ترجمة النصوص في WPML يقع على رأس أولوياتنا. يُكرّس هذا الإصدار من WPML بشكل حصري تقريباً لتحسين ترجمة النصوص.

ترجمة نصوص أسرع وأقل استهلاكاً للموارد


من أجل ترجمة السلاسل النصية، يحتاج WPML إلى تحميل الترجمة من قاعدة البيانات. لقد اختبرنا تقنيات تحميل مختلفة، ويبدو أن النهج المتّبع في WPML 3.5 هو الفائز بلا منازع.

في الإصدارات السابقة حاولنا:

  • تحميل الترجمات فقط، عند الحاجة إليها بالضبط
  • التحميل المسبق لجميع السلاسل النصية حسب السياق
  • التحميل المسبق لجميع السلاسل النصية من قاعدة البيانات

كان لكل من هذه النُهج إيجابياته وسلبياته. تمثلت المشكلة في أنه مقابل كل موقع استفاد من أحد هذه النُهج، كان هناك موقع آخر يعاني.

يستخدم WPML 3.5 نهجاً جديداً للتحميل المسبق لترجمات السلاسل النصية. فهو يحتفظ بجدول إضافي، يخبر WPML بالسلاسل النصية المطلوبة لكل صفحة. بعد ذلك، يقوم بالتحميل المسبق للسلاسل النصية المطلوبة لتلك الصفحة بالضبط، بغض النظر عن السياق الذي تنتمي إليه. الميزة الواضحة لذلك هي تقليل عدد السلاسل النصية المحمّلة مسبقاً، وعدم الحاجة إلى تحميل أي سلاسل نصية أثناء تصيير الصفحة. ونتيجة لذلك، انخفض كل من استهلاك الذاكرة واستخدام وحدة المعالجة المركزية (CPU) بشكل كبير. يتمثل الجانب السلبي لهذا النهج الجديد في وجود كود PHP جديد وصغير يتتبع السلسلة النصية المستخدمة ومكان استخدامها. يعمل هذا الكود الإضافي بسرعة كبيرة، بفضل الوصول المخصص لقاعدة البيانات والتخزين المؤقت الذي طورناه من أجله.

يعتمد تحسن الأداء الذي يجب أن تتوقعه على عوامل مختلفة:

  • عدد السلاسل النصية في موقعك – كلما زاد عدد السلاسل النصية لديك، زادت الفائدة (نسبياً، يتم الآن تحميل عدد أقل من السلاسل النصية مسبقاً).
  • إصدار PHP للخادم – يُعد PHP 7 أكثر كفاءة بكثير من PHP 5.6. إذا كنت لا تزال تستخدم PHP 5.x، فستحصل على تعزيز أكبر بكثير في الأداء، ولكنك ستشعر به أيضاً على PHP 7.
  • عدد الإضافات الأخرى التي تُشغّلها، وحجم المحتوى، والقالب، وما إلى ذلك – من الواضح أنه إذا كان موقعك يحتوي على أكواد برمجية أخرى بطيئة، فلن يكون التحسن في ترجمة النصوص كبيراً إلى هذا الحد.

بالنسبة لموقع WPML.org الخاص بنا، حصلنا على تحسينات الأداء التالية:

إصدار PHPالصفحةتوفير استهلاك الذاكرةتوفير استخدام وحدة المعالجة المركزية
PHP 5.6 الرئيسية60%41%
لوحة تحكم المسؤول41%33%
PHP 7 الرئيسية50%16%
لوحة تحكم المسؤول33%15%

التحسن الرئيسي الآخر في WPML 3.5 هو القدرة على ترجمة الروابط في السلاسل النصية (تلقائياً). ماذا يعني هذا ولماذا تحتاجه؟

نحن نستخدم «السلاسل النصية» لأشياء كثيرة ومختلفة. على سبيل المثال، إذا كان قالبك يخزن النص «الرئيسي» لصفحتك الرئيسية في «خيار»، فسيستخدم WPML ترجمة النصوص لذلك. حتى الآن، كان عليك تتبع السلاسل النصية التي تحتوي على عناوين URL وتعديلها لتتناسب مع المحتوى المترجم يدوياً. إذا كان العديد من السلاسل النصية يحتوي على روابط، فقد تكون هذه مهمة شاقة للغاية.

الآن، يتعامل WPML مع الروابط في ترجمة النصوص، بنفس الطريقة التي يتعامل بها مع الروابط في «المقالات» (المقالات والصفحات والأنواع المخصصة). عندما تترجم أي سلسلة نصية تحتوي على أي رابط، سيتم تعديل هذا الرابط تلقائياً للإشارة إلى المحتوى المترجم. سأكتب مقالة مدونة منفصلة توضح كيف يعمل هذا مع إضافة Toolset Layouts الخاصة بنا.

تحديث 2 أغسطس

مرحباً، لقد وجدنا مصدراً آخر لإهدار الوقت بشكل كبير جداً في لوحة التحكم. هذا المصدر بسيط وكان ينبغي التعامل معه منذ فترة. توجد «ودجت WPML» في لوحة تحكم WordPress، والتي ربما لم يعد أحد بحاجة إليها. تسحب هذه الودجت المحتوى من أماكن عديدة في قاعدة البيانات، بالإضافة إلى مقالات المدونة الحديثة من موقع wpml.org. ستؤدي إزالة هذا إلى التخلص من عدد من استدعاءات قاعدة البيانات، بالإضافة إلى الاستدعاءات الخارجية التي قد تكون بطيئة.

نحن نتعامل مع هذه الودجت (بإزالتها) ونراجع جميع الاستدعاءات الخارجية، للتأكد من أنها لا تبطئ موقعك.

التنزيل والتجربة


يدخل WPML 3.5 الآن مرحلة ضمان الجودة (QA). لقد اختبرنا التغيير على ترجمة النصوص بالكامل بالفعل، ولكن هناك الكثير مما يجب اختباره قبل أن نتمكن من إصداره كإصدار نهائي.

نود الحصول على ملاحظاتك حول هذا الإصدار الجديد القادم. إذا كان موقعك يعاني من مشكلات في الأداء تتعلق بترجمة النصوص، فهذا الإصدار مناسب لك.

يُرجى تذكر أن هذا إصدار بيتا، لذا جرّبه فقط على مواقع التطوير (وليس على المواقع المباشرة).

إصدار بيتا هذا متاح فقط لأصحاب حسابات «Multilingual CMS»، حيث يتمحور بشكل أساسي حول تحسينات ترجمة النصوص.

سجّل الدخول إلى حساب WPML الخاص بك وانقر على التنزيلات. مرّر إلى الأسفل ونزّل CMS Beta Package. فُك ضغط جميع مكونات WPML التي تستخدمها وارفعها إلى WordPress.

هل لديك ملاحظات؟


أخبرنا كيف يعمل هذا الإصدار معك من خلال ترك تعليقات هنا. إذا واجهت مشكلة، فابدأ موضوعاً جديداً في منتدى دعم WPML واترك تعليقاً هنا مع وصف موجز ورابط لذلك الموضوع.

نحن نتطلع إلى ملاحظاتك وأسئلتك وأفكارك واقتراحاتك!

هل وجدت هذا مفيداً؟ شارك هذه المقالة: