- الحالة
- محلولة
- أُبلغ عنها لـ
- WPForms Multilingual 0.4.1
- تم حلها في
- WPForms Multilingual 0.5.0
- وسوم الموضوع
- Compatibility
نظرة عامة على المشكلة
عند استخدام WPForms مع WPML وملحق WPForms Multilingual، تعرض النماذج التي تحتوي على حقول تكرار تسميات حقول غير صحيحة (على سبيل المثال، «Field ID #6_2») في البريد الإلكتروني للإشعارات بدلاً من أسماء الحقول الصحيحة. بالإضافة إلى ذلك، إذا كان هناك حقل قائمة منسدلة داخل هذا التكرار، فإنه يتسبب في حدوث خطأ، مما يمنع إرسال الإشعارات.
حل بديل مؤقت
يُرجى التأكد من أخذ نسخة احتياطية كاملة لموقعك قبل المتابعة.
- افتح الملف …/wp-content/plugins/wpml-wpforms/classes/Hooks/WpForms/Notifications.php.
- ابحث عن السطر .
- استبدل:
foreach ( $fields as $key => &$field ) { $field['name'] = $formPostFields[ $key ]['label']; $entryFields = Obj::propOr( [], 'fields', $entry ); if ( array_key_exists( $key, $entryFields ) ) { $field['value'] = $this->getFieldValue( $field, $entry['fields'][ $key ], $formPostFields[ $key ], $translatedFields[ $key ] ); } } - بـ:
foreach ( $fields as $key => &$field ) { $key = strpos( $key, '_' ) !== false ? substr( $key, 0, strpos( $key, '_' ) ) : $key; $field['name'] = $formPostFields[ $key ]['label']; $entryFields = Obj::propOr( [], 'fields', $entry ); if ( array_key_exists( $key, $entryFields ) ) { $field['value'] = $this->getFieldValue( $field, $entry['fields'][ $key ], $formPostFields[ $key ], $translatedFields[ $key ] ); } }