WPML
الحالة
مفتوحة
أُبلغ عنها لـ
WPML Multilingual CMS 4.6.13
وسوم الموضوع
Bug

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

قد لا تُترجم الحقول المخصصة ذات المفاتيح المعقدة (على سبيل المثال، التي تحتوي على رموز خاصة مثل الخطوط العمودية |) بشكل صحيح في WPML. يؤدي هذا إلى تخزين القيم المترجمة كمصفوفات متسلسلة بدلاً من سلاسل نصية بسيطة، مما يتسبب في حدوث مشكلات في عرض قيم الحقول المخصصة المترجمة.

حل بديل مؤقت

يُرجى التأكد من أخذ نسخة احتياطية كاملة لموقعك قبل المتابعة.


  • افتح الملف …/sitepress-multilingual-cms/classes/translation-jobs/class-wpml-element-translation-package.php.

  • ابحث عن السطر 260.

  • استبدل:
    	private function remove_field_name_from_start( $field_name, $field_id_string ) {
    		return preg_replace( '#' . $field_name . '-?#', '', $field_id_string, 1 );
    	}

  • بـ:
    	private function remove_field_name_from_start( $field_name, $field_id_string ) {
    		return preg_replace( '#' . preg_quote($field_name) . '-?#', '', $field_id_string, 1 );
    	}

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