WPML
الحالة
محلولة
تم حلها في
4.2.0

نظرة عامة على المشكلة

تحديث 13/08/2020:

منذ الإصدار WPML 4.2.0، يتم استيراد ملفات ترجمة JavaScript (JED) ويمكن تعديل الترجمات. ينشئ WPML ملفات JED الخاصة به بترجمات مخصصة.

لقد حاولنا تنفيذ ميزة فحص السلاسل النصية في ملفات JS، لكننا تخلينا عن ذلك بسبب قيود فنية:
- يجب إرفاق كل سلسلة نصية بملف JS المُحمّل.
- عادةً ما يكون الملف المُحمّل ملفاً مُجمّعاً (مثل babel / webpack) لا يمكن اكتشاف السلاسل النصية فيه بشكل صحيح.
- حتى لو تمكنا من ربط الملف المُجمّع بالملفات المصدرية، فعادةً ما يتم استبعاد تلك الملفات المصدرية من الإصدارات المنشورة للإضافات/القوالب، لذا سيكون ذلك بلا فائدة لمعظم المستخدمين.

إذا كنت تبني قوالب أو إضافات تحتوي على سلاسل نصية في ملفات JS، فإننا نوصي بإنشاء ملف POT أثناء تجميع سكربت JS (انظر أيضاً https://developer.wordpress.org/block-editor/developers/internationalization/#provide-your-own-translations).

يأتي محرر المكونات «Gutenberg» في WordPress باستراتيجية جديدة لترجمة النصوص. أصبح من الممكن الآن ترجمة سلسلة نصية داخل دالة JavaScript. ونتيجة لهذه الميزة الجديدة، يجب تحميل جميع السلاسل النصية للسكربت ذي الصلة على جانب المتصفح. وهذا لا يتوافق مع استراتيجية WPML الحالية لفحص وتصفية الترجمات.

نظراً لأن كود محرر المكونات يتطور بسرعة، قررنا الانتظار حتى يتم دمجه في WordPress، وبواجهة برمجة تطبيقات (API) واضحة ومستقرة. في غضون ذلك، سيتم تحميل جميع ترجمات النصوص في محرر المكونات من خلال واجهة برمجة تطبيقات WordPress القياسية بغض النظر عن إعدادات التعريب في WPML. ولهذا السبب، لن تتم ترجمة السلاسل النصية لمحرر المكونات باستخدام WPML ترجمة النصوص.

لا ينبغي أن يؤثر هذا على تجربة المستخدم كثيراً نظراً لأن هذه الميزة الجديدة تُستخدم فقط في الواجهة الخلفية (محرر المكونات) وهي بالفعل مترجمة بشكل كبير من قِبل المجتمع.

جميع المشاكل المعروفة →